OOP1 - eine kurze Begriffsbestimmung

Unter Turbo Pascal meinte man, den Gipfel der Programmierkunst erreicht zu haben, wenn man wußte, wie man mit Objekten umgeht. Unter Delphi operiert man vom ersten Programm an ('hello world') mit Objekten - oft ohne zu wissen, worum es da geht. Will man dagegen selber Objekt-Klassen anlegen, so muß man sich schon näher mit diesem Begriff beschäftigen. Darum zunächst einmal ein kurze Bestimmung der Begriffe:

Klasse

Die Definition einer Klasse legt die Variablen(Daten), Eigenschaften (properties) und Methoden (Prozeduren und Funktionen) für alle Objekte fest, die Instanzen dieser Klasse sind. Eine Klasse wird in Objekt- Pascal durch eine Typendeklaration definiert.

Instanz

Ein Objekt bezeichnet man auch als Instanz der Klasse. Während eine Klasse eine abstrakte Beschreibung ist, "verkörpert" eine Instanz diese Beschreibung. In Objekt-Pascal ist eine Instanz eine Variable vom Typ ihrer Klasse.

Datenkapselung

Auf Daten eines Objektes wird i.a. nicht direkt zugegriffen, sondern über Prozeduren bzw. Funktionen, die die zum Objekt gehörigen Daten initiieren, ändern oder ausgeben. Daten, Eigenschaften und Methoden bilden eine Einheit. Daten werden dadurch 'private', Methoden und Eigenschaften dagegen 'public'.

Methode

Methoden werden manchmal auch als Nachrichten bezeichnet, die die Objekte verschicken. Die Definition einer Methode zu einer Nachricht legt fest, wie ein Objekt auf die Nachricht reagiert. Dies kann eine Änderung seines Zustands oder das Versenden von Nachrichten an weitere Objekte zur Folge haben. Nachrichten können auch beantwortet werden.

Statische Objekte

Objekte, die bei der Compilierung angelegt werden, nennt man statische Objekte.

Dynamische Objekte

Objekte, die zur Laufzeit angelegt und gelöscht werden, nennt man dynamische Objekte.

Vererbung

Klassen können ihre Methoden und Variablen an Unterklassen vererben. Sie werden dazu in der höher stehenden Klasse definiert und an die Unterklassen vererbt, d.h., sie sind automatisch für die Unterklassen gültig. Zusätzliche - für die Unterklasse typische Methoden und Variablen - werden in den Unterklassen definiert. Sie können in verschiedenen Unterklassen durchaus mit gleichen Namen bezeichnet werden, der Compiler findet durch beim Aufruf die entsprechende Methode. Die Vererbunbgsstruktur zwischen Klassen und ihren Unterklassen nennt man Klassenhierarchie. Die Klasse aller Klassen in Objekt-Pascal ist TObject (s. Online-Hilfe von Delphi).

Aufgaben:

Erweitere das Programm fahrzeuge1.pas um zwei weitere Klassen TLKW und TPKW mit zusätzlichen Daten und erweitere die entsprechenden Methoden TLKW.ShowData und TPKW.ShowData.

 

Zurück zu Delphi

© Dietrich Praclik