====== Abstrakte Klasse ====== Eine abstrakte Klasse wird erzeugt durch das Schlüsselwort //abstract// in der Klassendefinition: public abstract class Tier Eigenschaften von abstrakten Klassen: * Im Gegensatz zu einer konventionellen [[..:klasse:start|Klasse]] kann von einer abstrakten Klasse keine Instanz erzeugt werden. * Somit macht eine abstrakte Klasse alleine noch keinen Sinn sondern erst durch die Definition von Unterklassen (-> [[..:vererbung:start|Vererbung]]). * Methoden können wie üblich geschrieben werden oder * auch als abstrakt definiert werden, dabei enthält die Methode keinen Rumpf und muss in einer Unterklasse überschrieben werden. Beispiel: abstract public void laufe(); * In einem [[..:uml_diagramm:start|UML-Diagramm]] erkennt man eine abstrakte Klasse am kursiv geschriebenen Namen.