polymorphismus:abstractclasses
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
polymorphismus:abstractclasses [2023/03/10 11:06] – Martin Pabst | polymorphismus:abstractclasses [2023/03/12 19:34] (aktuell) – [Beispiel 2: Raumschiff mit verschiedenen Kanonen] Martin Pabst | ||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
{{ : | {{ : | ||
**Merke:** \\ | **Merke:** \\ | ||
- | * Wird eine Methode in einer Klasse nur **deklariert**, | + | * Wird eine Methode in einer Klasse nur **deklariert**, |
* Eine Klasse, die mindestens eine abstrakte Methode besitzt, heißt **abstrakte Klasse**. | * Eine Klasse, die mindestens eine abstrakte Methode besitzt, heißt **abstrakte Klasse**. | ||
- | * Von einer abstrakten Klasse kann man keine Objekte instanzieren. | + | * Von einer abstrakten Klasse kann man keine Objekte instanzieren, wohl aber von Unterklassen, |
* Der Compiler stellt sicher, dass jede nicht-abstrakte Unterklasse einer abstrakten Klasse für alle abstrakten Methoden eine Implementierung besitzt. | * Der Compiler stellt sicher, dass jede nicht-abstrakte Unterklasse einer abstrakten Klasse für alle abstrakten Methoden eine Implementierung besitzt. | ||
</ | </ | ||
Zeile 160: | Zeile 160: | ||
</ | </ | ||
+ | |||
+ | |||
+ | <WRAP center round todo 80%> | ||
+ | **Aufgabe: ** \\ \\ | ||
+ | Erfinde eine andere Art von Kanone, schreibe eine entsprechende Klasse und probiere sie im obigen Programm aus. | ||
+ | </ | ||
polymorphismus/abstractclasses.1678446368.txt.gz · Zuletzt geändert: 2023/03/10 11:06 von Martin Pabst