LoslegenKostenlos starten

Quadrat und Rechteck

Das klassische Beispiel für ein Problem, das das Liskovsche Substitutionsprinzip verletzt, ist das Kreis-Ellipse-Problem, manchmal auch Quadrat-Rechteck-Problem genannt.

Auf den ersten Blick scheint es sinnvoll, eine Klasse Rectangle mit den Attributen h und w (für Höhe und Breite) zu definieren und dann eine Klasse Square, die von Rectangle erbt. Schließlich „ist“ ein Quadrat doch ein Rechteck!

Leider funktioniert diese Intuition im objektorientierten Design nicht.

Diese Übung ist Teil des Kurses

<Kurs>Objektorientierte Programmierung in Python</Kurs>
Kurs ansehen

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Define a Rectangle class
____

# Define a Square class
____
Code bearbeiten und ausführen