Ich habe die "Pull-Schnittstelle" Refactoring-Funktion von Eclipse heute verwendet, um eine Schnittstelle basierend auf einer vorhandenen Klasse zu erstellen. Das Dialogfeld bot an, alle neuen Methoden der neuen Schnittstelle als "abstrakte" Methoden zu erstellen.Warum sollte man eine Java-Interface-Methode als abstrakt deklarieren?
Was wäre der Vorteil davon?
Ich dachte, dass die Tatsache, dass Sie Interfacemethoden als abstrakt deklarieren konnten, eine überflüssige und harmlose Eigenschaft der Sprache war, die nicht besonders gefördert wird.
Warum sollte Eclipse einen solchen Stil unterstützen oder warum sollte sich jemand freiwillig dafür entscheiden?
Klarstellung: Ich frage nicht, warum Schnittstellenmethoden abstrakt sind, das ist offensichtlich. Ich frage mich, warum man sich explizit dafür entscheidet, sie als abstrakt zu bezeichnen, denn wenn sie in einer Schnittstelle sind, sind sie sowieso abstrakt.
Das war mein Verständnis (obwohl ich nicht mit dem spezifischen JLS Abschnitt vertraut war). Ich frage mich, warum Eclipse mir die Möglichkeit bieten würde, eine Obselete-Markierung zu erstellen ... – Uri
Got me. Irgendjemand irgendwo muss entschieden haben, dass es ein wünschenswertes "Feature" war, und es hineinlegen. Weißt du, einer dieser schlauen Open-Source-Typen :) – jdmichal
tsk tsk ... Ohne eine Warnung, dass es obselete ... – Uri