Objekte, Eigenschaften und Methoden
Das klingt vielleicht ein wenig abstrakt, mit den Eigenschaften und Methoden, deshalb hier ein konkretes Beispiel, nämlich Meinereiner:
    Ich heiße Peter, das ist eine Eigenschaft. Ich bin 1.87 groß, das ist eine unveränderliche (read only) Eigenschaft. Ich habe einen Taillenumfang (keine Ahnung) von sagen wir mal 80. Das ist eine veränderliche Eigenschaft. Sie kann nämlich durch die Methode "Abnehmen" verringert werden. Jedenfalls theoretisch. Ich verfüge aber auch über eigene Methoden (Fähigkeiten). Ich kann Kopfrechnen (naja) und Klavierspielen (behaupte ich hier einfach mal).
Wir hätten jetzt also folgende Eigenschaften (Variable) und Methoden (Funktionen) der Klasse "Peter":

  • Name = Peter
  • Größe = 187
  • Methode Addieren (A + B)
  • Methode Klavierspielen
  • Die Methode "Addieren" wäre jetzt eine Funktion, die zwei ihr übergebene Zahlen addiert. In JavaScript sähe das so aus:
     
    function addieren(Zahl1, Zahl2) {
      var Summe = Zahl1 + Zahl2;
      return Summe;
    }
     
    Die Methode Klavierspielen könnte eine Funktion sein, die einen ihr übergebenen Musiktitel (eine Audio- oder Midi-Datei) wiedergibt. Dazu müßte sie auf Systemfunktionen oder ein Multimedia-Objekt zugreifen, aber hier soll es ja nur um das grobe Prinzip gehen.
     
    Diese Auflistung von Variablen und Funktionen, zusammengefaßt unter dem Namen Peter, ist zunächst mal nur eine KLASSE, das Erbmaterial für Objekte. Aus dieser Klasse können jetzt konkrete OBJEKTE geklont (instanziert) werden, z. B. Peter1, Peter2 usw. Solange ihre Eigenschaften (Variablen) nicht verändert werden, sind sie zunächst mal völlig identisch. Aber natürlich kann einer von den beiden dann ab- oder zunehmen. Und der eine kann gerade "Hänschen-Klein" auf dem Klavier spielen, während der andere gleichzeitig "Alle meine Entchen spielt". Das klingt vermutlich scheiße, aber wichtig ist ja nur, daß diese beiden Objektinstanzen anschließend unabhängig von einander (auch gleichzeitig) agieren können.
    [zurück]

     

    Hierarchie, Objekt-Hierarchie
    Na das klingt jetzt komplizierter als es ist. Nehmen wir mal einen Stammbaum. Oben sind Adam und Eva. Dann ihre Kinder (Mist, bin nicht bibelfest, aber sie müssen ja welche gehabt haben ;-), und wieder deren Frauen und Kinder. Wird nach unten hin immer breiter. Das ist eine hierarchische Ordnung. Auch Menüs sind so Strukturiert. Zuoberst der Name des Menüs, dann diverse Untermenüs, die ihrerseits wieder Untermenüs enthalten können.
        In gleicher Weise können auch Objekte strukturiert sein. Ein Oberobjekt kann zahlreiche Unterobjekte, quasi als Eigenschaften enthalten. Den Variablen des Objektes wird dann nicht einfach eine Zahl oder ein Name zugeordnet, sondern eben ein Objekt, das ebenfalls wieder Unterobjekte enthalten kann.
    [zurück]