Oggi ho utilizzato la funzione di refactoring di "interfaccia di pull" di Eclipse per creare un'interfaccia basata su una classe esistente. La finestra di dialogo ha offerto di creare tutti i nuovi metodi della nuova interfaccia come metodi "astratti".Perché si dichiara un metodo di interfaccia Java astratto?
Quale sarebbe il vantaggio di questo?
Ho pensato che il fatto che fosse consentito dichiarare i metodi di interfaccia come astratti era una caratteristica superflua e innocua del linguaggio che non è particolarmente incoraggiata.
Perché Eclipse supporta un tale stile o perché qualcuno dovrebbe scegliere volontariamente di farlo?
Precisazione: non sto chiedendo perché i metodi di interfaccia sono astratti, è ovvio. Sto chiedendo perché si dovrebbe scegliere esplicitamente di contrassegnarli come astratti poiché se sono nell'interfaccia sono comunque astratti.
Questa era la mia comprensione (anche se non avevo familiarità con la sezione specifica di JLS). Mi chiedo perché Eclipse mi avrebbe offerto la possibilità di creare una marcatura obsoleta ... – Uri
Fammi vedere. Qualcuno da qualche parte deve aver deciso che era una "caratteristica" desiderabile e lo ha inserito. Sapete, uno di quegli astuti tipi open source :) – jdmichal
tsk tsk ... Senza un avviso che è obsoleto ... – Uri