prev up next

Previous: Externes Sortieren Up: Algorithmen-Skript WS 2000/2001 Next: Abstrakte Datentypen

Objektorientierte Programmierung

Die Modellierung eines Ausschnittes der realen Welt geschieht durch eine Klassenhierarchie, d.h., gleichartige Objekte werden zu Klassen zusammengefasst, von denen durch Vererbung Spezialisierungen abgeleitet werden. Gleichartigkeit bedeutet die Übereinstimmung von objektbezogenen Datenfeldern und objektbezogenen Methoden. Die abgeleitete Klasse erbt von der Superklasse die dort definierten Datenfelder und Methoden, fügt ggf. eigene hinzu und kann ihnen ggf. durch Überschreiben eine neue Bedeutung geben. Jede Klasse besitzt einen oder mehrere Konstruktoren, die für das Instanziieren ihrer Objekte zuständig sind.

Datenfelder, die mit dem Schlüsselwort static deklariert werden, heißen Klassenvariable. Sie existieren pro Klasse genau einmal (unabhängig von der Zahl der kreierten Instanzen) und übernehmen die Rolle von globalen Variablen, auf die alle Objekte dieser Klasse zugreifen können.

Die Sichtbarkeit von Variablen und Methoden wird mit Hilfe von Modifiern geregelt. Ist ein Element einer Klasse mit keinem der Schlüsselworte public, private oder protected deklariert, dann ist es nur innerhalb von Klassen desselben Pakets sichtbar. Das Standardpaket besteht aus allen Klassen im aktuellen Arbeitsverzeichnis.

Die folgende Tabelle zeigt die Umstände, unter denen Klassenelemente der vier Sichtbarkeitstypen für verschiedene Klassen erreichbar sind.

Erreichbar für: public protected paketsichtbar private
Dieselbe Klasse ja ja ja ja
Subklasse im selben Paket ja ja ja nein
Subklasse in anderem Paket ja ja nein nein
Keine Subklasse, selbes Paket ja ja ja nein
Keine Subklasse, anderes Paket ja nein nein nein

Source: Datum.java     JavaDoc: Datum.html     Applet: Source: Person.java     JavaDoc: Person.html     Applet: Source: Student.java     JavaDoc: Student.html     Applet: Source: PersonTest.java     JavaDoc: PersonTest.html     Applet: Source: Mitarbeiter.java     JavaDoc: Mitarbeiter.html    

Source: Arbeiter.java     JavaDoc: Arbeiter.html    

Source: Angestellter.java     JavaDoc: Angestellter.html     Source: Firma.java     JavaDoc: Firma.html     Source: Kind.java     JavaDoc: Kind.html     Applet:


prev up next
Previous: Externes Sortieren Up: Algorithmen-Skript WS 2000/2001 Next: Abstrakte Datentypen