Java Reference
In-Depth Information
this.rolle = rolle;
this.reden = reden;
}
}
Sie haben also eine Reihe von lokalen Variablen, die die Eigenschaten repräsentieren, und
Funktionsdeklarationen, die für die Methoden stehen. Dazu inden Sie als Kern wieder den
Konstruktor, mit dem das Objekt erstellt wird. Ganz wie bisher und Sie sehen, dass die
Unterschiede eigentlich marginal sind und man auch deshalb heute schon nahezu wider-
spruchsfrei bei der Objektbeschreibung mit einem Konstruktor von einer Art Klasse spre-
chen kann. Allerdings sind die Möglichkeiten einer solchen expliziten Klassendeklaration
umfangreicher.
HInWEIS: Das Schlüsselwort constructor gibt es ja schon aktuell in JavaScript,
aber es steht auch eine Syntax zur Diskussionen, um damit über constructor
function Klasse(){/*...*/} explizit eine Funktion zum Erstellen eines Objekts
auszuzeichnen. Ob das möglich oder gar zwingend wird, ist derzeit noch nicht
klar.
13.6.2.1■Zugrifsmodiizierer und Getter/Setter
So wird man in Verbindung mit Klassen vermutlich Zugrifsbeschränkungen über Modii-
zierer ( private , protected , public ) einführen und eine spezielle Syntax für Getter und
Setter bereitstellen, um damit indirekte Zugrife zu standardisieren. Beispiel:
Listing 13.31■ Funktionen zum Setzen und Lesen der Variablen a
a get = function ():Integer{/*code*/; return x;};
a set = function (x):Integer{/*code*/; return true;};
Gerade bei der konkreten Syntax von Gettern und Settern sind aber aktuell noch konkurrie-
rende Konzepte in der Diskussion.
13.6.2.2■Vererbung
JavaScript 2.0 soll auch echte Vererbung über eine Syntax mit extend einführen. Mit so
etwas wie class A extend(B) {} soll man B als Superklasse von A angeben können.
13.6.2.3■Abstrakte Techniken
In der echten OOP wird viel mit abstrakten Methoden, abstrakten Klassen und Schnittstel-
len gearbeitet. Dazu kommt die Technik des sogenannten Überschreibens (Override), um
abstrakte Methoden konkret zu implementieren. So etwas kennt JavaScript derzeit noch gar
nicht. Mit den Schlüsselwörtern abstract und virtual soll diese Möglichkeiten in
JavaScript Einzug halten.
Im Wesentlichen bezeichnet bzw. kennzeichnet ein abstract -Modiizierer (potenziell) un -
vollständigen Code. Damit ist es aber nicht mehr sinnvoll, dass dieser direkt verwendet
wird. Der hauptsächliche Nutzen liegt in den erheblichen Möglichkeiten zur Strukturierung
 
Search WWH ::




Custom Search