> ## Documentation Index
> Fetch the complete documentation index at: https://docs.baenninger.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Abstrakte Klassen und Member

Eine Klasse, eine Methode oder ein Feld kann abstrakt sein. Das bedeutet, dass sie keine Implementierung haben. Eine abstrakte Methode oder ein abstraktes Feld muss sich innerhalb einer abstrakten Klasse befinden.

Du kannst eine abstrakte Klasse nicht instanziieren. Du musst eine Unterklasse erstellen, die alle abstrakten Methoden und Felder implementiert.

```typescript theme={null}
abstract class Animal {
  abstract makeSound(): void;
  abstract move(): void;
}

class Dog extends Animal {
  makeSound() {
    console.log("Woof");
  }

  move() {
    console.log("Running");
  }
}
```
