Junior — Middle
Können Sie erklären, was der Begriff der abstrakten Klasse in der objektorientierten Programmierung bedeutet?
sobes.tech KI
Antwort von AI
Eine abstrakte Klasse in der objektorientierten Programmierung ist eine Klasse, die nicht dazu bestimmt ist, direkt Instanzen zu erstellen. Sie dient als Vorlage für andere Klassen und kann sowohl implementierte Methoden als auch abstrakte Methoden (ohne Implementierung) enthalten, die in den Unterklassen implementiert werden müssen.
Zum Beispiel wird in Dart (der Sprache Flutter) eine abstrakte Klasse mit dem Schlüsselwort abstract deklariert:
abstract class Animal {
void makeSound(); // abstrakte Methode
void breathe() {
print('Atmet'); // implementierte Methode
}
}
class Dog extends Animal {
@override
void makeSound() {
print('Wau');
}
}
void main() {
// Animal animal = Animal(); // Fehler: Kann keine Instanz einer abstrakten Klasse erstellen
Dog dog = Dog();
dog.makeSound(); // Wau
dog.breathe(); // Atmet
}
Auf diese Weise legt die abstrakte Klasse eine allgemeine Schnittstelle und Grundfunktionalität fest, während konkrete Klassen die Details implementieren.