Zugriff auf die äußere Klassenvariable über das innere Klassenobjekt in 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);

    }
}

Hier erhalte ich also die erwartete Ausgabe

2
7

Jetzt wollte ich das fragen, sagen wir, ich möchte darauf zugreifenho'sx vonhe.

Das heißt Ich möchte hier etwas, das mich drucken wird2 durch das Helper-Objekthe:

System.out.println(???);

Ich weiß, dass es so etwas nicht gibt, ich möchte nur mein Konzept von verschachtelten Klassen klarstellen. Ich denke, dass dies möglich sein sollte, weil das Helper-Objekthe ist an das Host-Objekt gebundenho. Schon seithe geht nicht ohneho. Aus der Helferklasse heraus kann ich das machenSystem.out.println(Host.this.x); und es funktioniert. Ich kann nicht herausfinden, wie man es von innen macht.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage