Sobes.tech
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.