define class
Definiert eine Klasse innerhalb eines Moduls.
DEFINE CLASS <ClassName> AS <BaseClassName> [OF <BaseClassModule>]
[HIDDEN <...ListOfHiddenProperties>]
[PROTECTED <...ListOfProtectedProperties>]
[DIMENSION <ArrayPropertyName>[x, y]]
[<PropertyName> = <InitialValue>]
[FUNCTION <FunctionName>]
ENDDEFINE
Sichtbarkeit von Methoden und Eigenschaften
Methoden und Eigenschaften können PUBLIC, PROTECTED
oder HIDDEN sein. PUBLIC ist der Standardmodifizierer, falls
die Eigenschaft oder Methode nicht explizit als PROTECTED oder
HIDDEN definiert wurde.
Öffentliche Methode
Die Methode somePublicFunction kann von überall
aus Aufgerufen werden.
1
2
3
4
5
DEFINE CLASS someClass AS Custom
FUNCTION somePublicFunction
RETURN .T.
ENDFUNC
ENDDEFINE
Private Methode
Die Methode somePrivateFunction ist nur von innherlb
der Klasse someClass ausführbar.
1
2
3
4
5
DEFINE CLASS someClass AS Custom
HIDDEN FUNCTION somePrivateFunction
RETURN .T.
ENDFUNC
ENDDEFINE