Salut,

J'ai toujours cru que le fait qu'on ne puisse pas instancier une interface signifiait qu'on ne pouvait pas utiliser le mot cle new avec une interface.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
List<String> l = new List<String>(); //Compile Time Error
Pourtant je vois souvent dans des exemples ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Runnable r = new Runnable() {public void run(){System.out.println("Middle Access");}};
...
Serializable s = new Serializable(){};
Cette question est un peu bancale mais pourquoi cela est possible si les specifications de Java precisent que c'est impossible. Je rate quelque chose mais je n'arrive pas a mettre le doigt dessus. Y a t il une exception pour les interfaces anonymes ? Ou bien j'ai tord d'associer instance et new ?