ComenzarEmpieza gratis

Cuadrado y rectángulo

El ejemplo clásico de un problema que viola el Principio de Sustitución de Liskov es el problema del Círculo-Elipse, a veces llamado el problema del Cuadrado-Rectángulo.

A primera vista, parece que podrías definir una clase Rectangle, con atributos h y w (alto y ancho), y luego definir una clase Square que herede de Rectangle. Al fin y al cabo, ¡un cuadrado “es un” rectángulo!

Por desgracia, esta intuición no se mantiene en el diseño orientado a objetos.

Este ejercicio forma parte del curso

Programación orientada a objetos en Python

Ver curso

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Define a Rectangle class
____

# Define a Square class
____
Editar y ejecutar código