1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

[Java]: innere Klasse greift auf Objekt von eigenem Typ in äusserer Klasse zurück

Dieses Thema im Forum "OS X-Developer" wurde erstellt von MatzeLoCal, 08.03.07.

  1. MatzeLoCal

    MatzeLoCal Rheinischer Bohnapfel

    Dabei seit:
    05.01.04
    Beiträge:
    2.421
    Ich habe hier einen neuen Kollegen und dieser hat sich zwar schon eingearbeitet, aber ab und zu kommt noch mal ne Frage. Nunja heute fragte er mich wegen etwas und dann zeigte er mir ein stückerl code... und das verwirrt mich bis jetzt.

    Was mir totales Kopfzerbrechen bereitet ist diese Stückerl Code.
    (Also das ganze ist nur ein "Prototyp" von dem was ich zu sehen bekam. Mir geht es nur um das "Konzept")

    Code:
    public class Lebewesen {
     
         private Mensch ernie = null;
         
         class Mensch() {
             
           public boolean ernieIsNull() {
                 return ernie==null;
             }
         }
    }
    
    Ich bin eh kein Fan vom "inner Class" Konzept.. aber das hat mich dann total verwirrt.... oder bin ich nur übernächtigt?
     
  2. ChrisDD

    ChrisDD Gloster

    Dabei seit:
    21.02.04
    Beiträge:
    64
    Schau Dir mal den Punkt Member-Klassen und Lokale Klassen unter folgendem Link an. Das sollte Dein Problem lösen.

    Verschachtelte Klassen

    Gruß
    Chris
     
  3. MatzeLoCal

    MatzeLoCal Rheinischer Bohnapfel

    Dabei seit:
    05.01.04
    Beiträge:
    2.421
    Das Konzept ist mir schon klar.. und wie gesagt, ich mag es nicht bzw finde es alles andere als elegant.

    Was ich so strange finde ist, dass ein objekt in sich selbst prüft, ob es eine bestimmte instanz von sich selbst gibt.
     
  4. Peter Maurer

    Peter Maurer Carmeliter-Renette

    Dabei seit:
    16.03.04
    Beiträge:
    3.274
    Das hat dann aber gar nichts mit den verschachtelten Klassen zu tun, oder?

    Das reine Pruefen auf die Existenz einer bestimmten Instanz (und ggf. ihre Erstellung) find' ich jedenfalls wenig erstaunlich. In Cocoa/Objective-C macht man das oft in Controller-Klassen, von denen man nur eine "shared instance" haben will. Und auch anderswo, hier ein paar Beispiele:

    [NSApplication sharedApplication]
    [NSFileManager defaultManager]
    [NSWorkspace sharedWorkspace]

    etc.

    Oder hab' ich noch nicht verstanden, was Dich an diesem Codeschnipsel stoert?

    Zusatzfrage, die dann doch wieder mit den verschachtelten Klassen zu tun hat: Waer's nicht sinnvoller, wenn in Deinem Beispiel "ernie" innerhalb der "Mensch"-Klasse deklariert wuerde? Oder stellt "Lebewesen" auch noch irgendwas mit "ernie" an -- ausserhalb Deines moeglichst einfachen Prototyp-Codes?
     
  5. MatzeLoCal

    MatzeLoCal Rheinischer Bohnapfel

    Dabei seit:
    05.01.04
    Beiträge:
    2.421
    Mit dem dem Cooca/Obj-C haste schon recht. Ich glaube ich hab das alles zu stark vereinfacht... also das was ich gestern gesehen habe war halt echt sinnlos. Wurde mittlerweile wohl auch korrigiert.
     

Diese Seite empfehlen