[ascoders] AW: Re: AW: Sound Class erweitern

@michael

>o = GameSound.prototype = new Sound(); <<---- ?!
>
>
>mist, und ich dachte ich hätte OOP begriffen :o)


Ich erkläre mir das so:

"new" liefert die Instanz einer Klasse(Objekt).

Dabei passiert nichts anderes, als daß eine
leerer Instanz eines Kontainers(Object) mit
Methoden und Eigenschaften gefüllt wird.
Genauer gesagt wird ja das prototype Object
des mit diesen Methoden versehen, auf welche
die Klasse später zugreift.

o = GameSound.prototype = new Sound();

würde folglich bedeuten, daß das prototype Object
der Klasse GameSound die "Rückgabe" der Konstruktor
Funktion erhällt, nicht jedoch die Instanz der Klasse

Da das prototype Object von GameSound nun aber über
alle Methoden der Klasse Sound verfügt, hat die Vererbung
stattgefunden, die Initialisierung jedoch nicht.


Was hällst du von dieser Erklärung???

Gruß
Timo H.



------------------------------------------------------
Archiv   : http://www.freelists.org/archives/ascoders/
Optionen : http://www.freelists.org/list/ascoders
------------------------------------------------------

Other related posts: