Programmieren_1/abstract.md

1.1 KiB

abstrakte Methoden

Eine Methode ohne Implementation

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

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:

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.