Virtuelle Methoden sind zur Redefinition vorbereitete Methoden. Sie werden in der Basisklasse definiert und stehen darum in jeder Ableitung zur Verfügung. Die Ableitungen können die Methoden nach eigenen Bedürfnissen umdefinieren.
Das Schlüsselwort virtual zeigt an, dass die entsprechende Methode in einer Ableitung neu definiert werden kann.
Bei einer virtuellen Methode wird zur Laufzeit der Typ eines Objekts festgestellt und dann die richtige Methode aktiviert. Enthält eine Klasse virtuelle Methoden, dann sind ihre Objekte polymorph (vielgestaltig). Die aktuelle "Gestalt", der Typ des Objekts, wird zur Laufzeit festgestellt. Dazu muss das Objekt eine Typmarkierung enthalten.
Bei virtuellen Methoden entscheidet der Typ des Objekts über die aufgerufene Methode.
|