A partire da Java 8, i metodi default
sono stati introdotti nelle interfacce. In pratica, questo significa che non tutti i metodi in interface
sono abstract
.
A partire da Java 9 (forse), saranno consentiti i metodi private
. Ciò significa che non tutti i metodi in interface
sono public abstract
.
La domanda "I metodi in un'interfaccia Java devono essere dichiarati con o senza il modificatore di accesso public
?" è stato chiesto a Stack Overflow a link
Lì, la maggior parte delle risposte ha sostenuto che public abstract
non dovrebbe essere utilizzato perché nessun metodo in interface
può essere diverso da public abstract
. Questo non è più il caso.
Quindi, alla luce di queste nuove funzionalità delle interfacce, le parole chiave public abstract
devono essere utilizzate in una dichiarazione del metodo di interfaccia Java?
Nel mio ambiente specifico, avremo persone con esperienza in ingegneri del software, ma non esperte in Java, che leggono il codice Java di volta in volta. Ritengo che ignorando le parole chiave public abstract
creeremo ora un ulteriore punto di confusione per coloro che non hanno familiarità con la cronologia di come le interfacce hanno avuto regole diverse per l'utilizzo di queste parole chiave.