Vererbungsprinzip

Inhalt der Vererbung

Ein abgeleiteter Funktionsbaustein erbt alle Daten, Methoden, Eigenschaften, Aktionen und Transitionen, die im Basis-Funktionsbaustein definiert sind. Beachten Sie die Zugriffsmöglichkeiten auf geerbte Elemente, die mithilfe des Zugriffsmodifizierers definiert werden.

Zugriffsmöglichkeiten auf geerbte Elemente

Inwieweit eine Unterklasse innerhalb ihres Gültigkeitsbereichs auf geerbte Methoden oder Eigenschaften zugreifen kann, hängt von dem Zugriffsmodifizierer ab, mit dem die Methode oder Eigenschaft in der Basisklasse definiert ist.

Methoden und Eigenschaften, die in der Basisklasse mit dem Zugriffsmodifizierer PRIVATE deklariert sind, können innerhalb des Gültigkeitsbereich der Unterklasse weder aufgerufen werden, noch können sie von der Unterklasse überschrieben oder erweitert werden.
Private Methoden und Eigenschaften stehen der Unterklasse nur insofern zur Verfügung, als dass sie für die Instanz der Unterklasse ausgeführt werden, falls sie innerhalb der Implementierung der Basisklasse aufgerufen werden.

Beispiel:

Die Basisklasse verfügt über eine PUBLIC- und eine PRIVATE-Methode. Die PUBLIC-Methode ruft in ihrer Implementierung die PRIVATE-Methode auf. Die PUBLIC-Methode kann von der Unterklasse aufgerufen werden, sodass dabei implizit die PRIVATE-Methode mit aufgerufen wird. Die PRIVATE-Methode kann von der Unterklasse allerdings nicht aktiv aufgerufen, überschrieben oder erweitert werden.

Zur Festlegung der Zugriffsmöglichkeiten auf eine Methode oder eine Eigenschaft stehen folgende Zugriffsmodifizierer zur Verfügung:

PUBLIC

Entspricht der Angabe keines Zugriffsmodifizierers. Das Element (Methode oder Eigenschaft) kann von außerhalb des Funktionsbausteins aufgerufen werden. Somit kann auch eine Unterklasse auf das Element zugreifen

PRIVATE

Der Zugriff auf das Element ist auf den Funktionsbaustein beschränkt. Ein Zugriff von außerhalb des Funktionsbausteins ist in keiner Weise möglich. Auch eine Unterklasse kann nicht auf das Element zugreifen. Die Unterklasse kann das Element somit weder aufrufen noch überschreiben oder erweitern

PROTECTED

Der Zugriff auf das Element ist auf den Funktionsbaustein und seine Ableitungen beschränkt. Eine Unterklasse kann auf das Element zugreifen und es somit sowohl aufrufen als auch erweitern oder überschreiben. Ein Zugriff von außerhalb dieser "Vererbungsfamilie" ist nicht möglich.

INTERNAL

Der Zugriff auf das Element ist auf den Namensraum (die Bibliothek) beschränkt. Ein Zugriff von außerhalb des Namensraums ist nicht möglich. Das Element kann von außerhalb des Namensraums somit weder aufgerufen noch überschrieben oder erweitert werden.

Erweitern bzw. Überschreiben von geerbten Elementen

Engineering-Tipp: Für dieses Erweitern bzw. Überschreiben der vom Basisbaustein geerbten Methoden, Eigenschaften, Aktionen und Transitionen erhalten Sie beim Engineering folgendermaßen Unterstützung: Wenn Sie eine Methode, Eigenschaft etc. zu dem abgeleiteten Baustein hinzufügen, erhalten Sie im Feld Name des Hinzufügen-Dialogs (z. B. Methode hinzufügen, Eigenschaft hinzufügen) eine Drop-down-Liste mit einer Auswahl der im Basisbaustein verwendeten Methoden, Eigenschaften etc. Wenn Sie z. B. im Dialog Methode hinzufügen eine dieser angebotenen Methoden auswählen, werden die übrigen Deklarationseinstellungen der Methode (Rückgabetyp, Zugriffsmodifizierer) automatisch von der Methodendeklaration der Basisklasse übernommen. Beim Bestätigen des Dialogs wird die Methode gemäß dieser Deklarationen angelegt. Sie können den Implementierungsteil der Methode daraufhin anpassen, sodass sie dem gewünschten Verhalten der Unterklasse entspricht.

Weitere Informationen zum Thema Erweitern bzw. Überschreiben finden Sie im Abschnitt „Anwendungsfälle von geerbten Elementen“.

Weitere Aspekte der Erweiterung