title: Why would one declare a Java interface method as abstract?
body: <p>I used the "pull interface" refactoring feature of Eclipse today to create an interface based on an existing class. The dialog box offered to create all the new methods of the new interface as "abstract" methods.</p>
  
  <p>What would be the benefit of that?</p>
  
  <p>I thought that the fact that you were allowed to declare interface methods as abstract was a superfluous and harmless feature of the language that is not particularly encouraged.</p>
  
  <p>Why would Eclipse support such a style, or why would someone voluntarily choose to do so?</p>
  
  <p>Clarification: I am not asking why interface methods are abstract, that is obvious. I am asking why one would explicitly choose to mark them as abstract since if they're in an interface they are abstract anyway. </p>