# abstrakte Methoden Eine Methode ohne Implementation ```java abstact double getArea(); ``` --- # abstrakte Methoden Eine Klasse mit mindestens einer abstrakten Methode muss abstrakt sein Es können keine Objekte einer abstrakten Klasse erzeugt werden ```java abstract class Shape { abstact double getArea(); String toString() { return "Shape"; } ``` --- Es können keine Objekte einer abstrakten Klasse erzeugt werden, jedoch Variablen dieser ein Objekt einer nicht abstrakten Subklasse aufnehmen: ```java class Circle extends Shape { private double radius; Circle(int rad) {radius = rad; } double getArea(){ return 3.14 * radius * radius; } } //Shape shape1 = newCircle(4); //System.out.printf("%.2f", shape1.getArea()); ``` --- # Übung * Lasse die Klasse sheep (und andere Tiere) von einer abstrakten Klasse animal erben. Ändere den Code and den richtigen Stellen ab.