1.2 KiB
1.2 KiB
Abstrakte Methoden
Eine Methode ohne Implementation
abstract double getArea();
Abstrakte Methoden
Eine Klasse mit mindestens einer abstrakten Methode muss abstrakt sein
Es können keine Objekte einer abstrakten Klasse erzeugt werden
abstract class Shape {
abstract 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:
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
- Ändere die Klasse
Animalzu einer abstrakten Klasse. Alle Methoden die beiSheepundCowgleich sind müssen nicht abstrakt sein. Füge aber eine abstrakte MethodeString makeNoise()ein. Ändere den Code and den richtigen Stellen ab.