Axel Richter: Vererbung

Beitrag lesen

Hallo,

Aber wie stellst Du denn sicher, daß man die Eigenschaften richtig überschreiben kann?

Funktioniert das Überschreiben von Eigenschaften bzw. Methoden in JavaScript (Prototyping) überhaupt? Beobachte mal die Reihenfolge des Objekt-Durchlaufs:

function Menschenartiger (Name) { this.Name = Name; }
Menschenartiger.prototype.parent = Menschenartiger

function Menschenaffe (Name) { alert("Menschenaffe extends " + this.parent);this.parent(Name); }
Menschenaffe.prototype = new Menschenartiger();

function EchterMensch (Name) { alert("EchterMensch extends " + this.parent);this.parent(Name); }
EchterMensch.prototype = new Menschenaffe();

function Mensch (Name) { alert("Mensch extends " + this.parent); this.parent(Name); }
Mensch.prototype = new EchterMensch();

var molily = new Mensch("Mathias");
alert(molily.Name);

Übrigens ist das mit der constructor-Syntax genau so.

JavaScript ist eben Kinderkram und keine OOP-Sprache ;-))

viele Grüße

Axel