# 5.4 Beziehungen von Klassen untereinander

Gliederung

5.4.1 Mehrere Klassen verwenden
5.4.2 UML-Diagramme verstehen
5.4.3 Statische Aufrufe von Klassen
5.4.4 Vererbung
5.4.5 Vererbung - weiteres Beispiel
5.4.6 Aggregation und Komposition
5.4.7 Beispiel mit Vererbung, Aggregation und Komposition
5.4.8 Abstrakte Klassen und Interfaces (= Schnittstellen)
5.4.9 Selbsttest Nr.3 zu OOP in PHP

Bisher haben wir Klassen betrachtet, die vom Hauptprogramm aufgerufen wurden. Wir haben also eine Instanz der Klasse im Hauptprogramm gebildet und dann die Methoden und Eigenschaften der Klasse im Hauptprogramm genutzt. In einigen Beispielen haben wir auch zwei Instanzen einer Klasse gebildet und damit im Hauptprogramm gearbeitet, siehe z.B.:

    1
    2
    3
    4
    <?php
    // Hauptprogramm
    $anna = new Horse("Deutsches Reitpony");
    $paula = new Horse("Welsh B");

In einer komplexeren Programmierung gibt es normalerweise viele verschiedene Klassen. Und diese Klassen sind miteinander verbunden. Genau diese "Beziehungen von Klassen untereinander" wollen wir in diesem Kapitel behandeln.