Доступ к переменной внешнего класса через внутренний объект класса в 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);
}
}
Итак, здесь я получаю ожидаемый результат
2
7
Теперь я хотел спросить, что, скажем, я хочу получить доступho
«sx
изhe
.
То есть Я хочу что-то здесь, что напечатает меня2
через вспомогательный объектhe
:
System.out.println(???);
Я знаю, что это бесполезно, я просто хочу уточнить мою концепцию вложенных классов. Я полагаю, что это должно быть возможно, потому что объект Helperhe
является своего рода «привязанным» к объекту Hostho
, посколькуhe
невозможно безho
, Из класса Хелпер я могу сделатьSystem.out.println(Host.this.x);
и это работает. Я не могу понять, как это сделать изнутри main.