Ho iniziato a prepararmi per l'esame OCJP7 e ho trovato questo capitolo che sembra essere molto complicato.Classi Java interne e nidificate
Diciamo che ho questo codice:
class Outer1{
interface InnerInterface{
String x = "test";
}
class InnerClass{
String x = "test";
}
}
class Outer2{
static interface NestedInterface{
String x = "test";
}
static class NestedClass{
String x = "test";
}
}
class Main{
public static void main(String [] args){
String s1 = Outer1.InnerInterface.x;
String s2 = new Outer1().new InnerClass().x;
String s3 = Outer2.NestedInterface.x;
String s4 = new Outer2.NestedClass().x;
}
}
Mi può dire perché possiamo accedere Outer1.InnerInterface.x
e Outer2.NestedInterface.x
nello stesso modo? Le interfacce interne sono statiche di default? Sto cercando di creare delle connessioni per renderle più chiare.
possibile duplicato di [Perché un'interfaccia statica interna deve essere utilizzata in Java?] (Http://stackoverflow.com/questions/71625/why-would-a-static-inner-interface-be-used-in- java) –