Java 8 - Interfacce con metodi default

Le interfacce non possono avere metodi con un'implementazione, ma solo metodi astratti. Ah si, ahhhh siiiiii!??!?!?!?! E invece no!
Con l'ottava serie TV di java, nota ai più come Java 8, le interfacce possono contenere
i cosiddetti metodi default, ovvero, non semplici firme, ma dei metodi con un corpo (sensuale o meno) che facciano concretamente qualcosa.

Ciapa:

public interface Interfaccia { default void metodo(){ System.out.println("Dentro Interfaccia.metodo()");
} }


Tali metodi possono essere sovrascritti dalla classe che implementa la nostra interfaccia oppure essere chiamati senza aggiungere ulteriore codice. Ma come si fa? Non ve lo dico! Vabbè stavolta ve lo dico...

interface Interfaccia{ default void metodo(){ System.out.println("Comandiii!!!"); } }
public class JavaMaledetto implements Interfaccia{ public static void main(String[] args) { JavaMaledetto jm = new JavaMaledetto(); jm.metodo(); } }

Cerea...

Commenti