Acceso a la variable de clase externa a través del objeto de clase interna en main
class Host {
int x=2;
class Helper {
int x = 7;
}
public static void main(String[] args){
Host ho = new Host();
Helper he = ho.new Helper();
System.out.println(ho.x);
System.out.println(he.x);
}
}
Así que aquí estoy obteniendo la salida esperada.
2
7
Ahora quise preguntar eso, digamos, quiero acceder.ho
esx
desdehe
.
Es decir. Quiero algo aquí que me imprima.2
a través del objeto Ayudantehe
:
System.out.println(???);
Sé que no sirve de nada, solo quiero aclarar mi concepto de clases anidadas. Me imagino que esto debería ser posible, porque el objeto Ayudantehe
es una especie de 'enlazado' al objeto Hostho
. Ya quehe
no es posible sinho
. Desde dentro de la clase Helper puedo hacerSystem.out.println(Host.this.x);
y funciona. No puedo averiguar cómo hacerlo desde dentro principal.