ABSTRACT-Konzept

Das Schlüsselwort ABSTRACT ist für Funktionsbausteine, Methoden und Eigenschaften verfügbar. Es ermöglicht die Implementierung eines SPS-Projektes mit Abstraktionsebenen.
Die Abstraktion ist ein Schlüsselkonzept der Objektorientierten Programmierung. Verschiedene Abstraktionsebenen enthalten dabei allgemeine oder spezifische Implementationsaspekte.

ABSTRACT-Konzept 1:

Verfügbar ab TC3.1 Build 4024

Anwendung der Abstraktion

Es bietet sich an, Basisfunktionen oder Gemeinsamkeiten verschiedener Klassen in einer abstrakten Basisklasse zu implementieren. Spezifische Aspekte implementieren Sie in nicht-abstrakten Unterklassen.
Das Prinzip ähnelt damit der Verwendung einer Schnittstelle. Schnittstellen entsprechen rein abstrakten Klassen, die nur abstrakte Methoden und Eigenschaften enthalten. Eine abstrakte Klasse kann auch nicht-abstrakte Methoden und Eigenschaften enthalten.

Regeln für die Nutzung des Schlüsselworts ABSTRACT

Beispiel

Abstrakte Basisklasse:

FUNCTION_BLOCK ABSTRACT FB_System_Base

In dieser abstrakten Basisklasse werden die Gemeinsamkeiten aller Systemmodule implementiert. Dafür enthält sie die nicht-abstrakte Eigenschaft „nSystemID“ und die abstrakte Methode „Execute“:

PROPERTY nSystemID : UINT
METHOD ABSTRACT Execute

Während die Implementierung von „nSystemID“ für alle Systeme gleich ist, unterscheidet sich die Implementierung der Methode „Execute“ für die einzelnen Systeme.

Nicht-abstrakte Unterklasse:

FUNCTION_BLOCK FB_StackSystem EXTENDS FB_System_Base

Für die spezifischen Systeme werden nicht-abstrakte Klassen implementiert, die von der Basisklasse abgeleitet werden. Diese Unterklasse repräsentiert einen Stack. Da sie nicht abstrakt ist, muss sie die Methode „Execute“ implementieren, die die spezifische Stack-Ausführung definiert:

METHOD Execute