Middle
Le interfacce possono avere metodi con o senza implementazione?
sobes.tech AI
Risposta dell'AI
Nelle interfacce classiche, ad esempio in Java fino alla versione 8, i metodi non possono avere implementazione — vengono solo dichiarati, e l'implementazione viene fornita nelle classi che implementano quell'interfaccia.
A partire da Java 8, sono stati introdotti metodi con implementazione nelle interfacce — i metodi default. Questi permettono di definire un'implementazione standard che può essere sovrascritta nelle classi.
Esempio:
public interface MyInterface {
void abstractMethod(); // senza implementazione
default void defaultMethod() {
System.out.println("Implementazione di default");
}
}
In questo modo, le interfacce possono contenere sia metodi astratti senza implementazione sia metodi con implementazione (default, static). Ciò amplia le capacità delle interfacce e semplifica l'evoluzione delle API.