Objektorientierung in JavaScript/Datenkapselung, Vererbung, Polymorphie/Datenkapselung

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Javascript</language>
Datenkapselung bedeutet, dass ein Objekt seine Attribute nach außen hin versteckt (information hiding) und sie so vor ungeregeltem Zugriff schützt. Es hat das alleinige Recht, auf seine Daten zuzugreifen und sie zu lesen oder zu ändern. Möchten andere Objekte Zugriff auf die Daten erhalten, müssen sie dies über definierte Schnittstellen tun.
[[Bild:Flogerlinghoff_Datenkapselung1.JPG]]

In JavaScript kann auf Variablen, die im Konstruktor nicht mit dem Schlüsselwort ''this'' gekennzeichnet wurden, nicht von außen zugegriffen werden.

<code id="54jhin213jn">
function Person(name) {
  var name = name;
  this.getPersonsName = function() {
    return name;
  }
}
</code>
<run id="54jhin213jn">
var peter = new Person("Peter");
typeof(peter.name);
</run>
<run id="54jhin213jn">
var Emma = new Person("Emma");
Emma.getPersonsName();
</run>