Квадрат і прямокутник
Класичний приклад порушення принципу підстановки Лісков — це задача про коло й еліпс, інколи її подають як задачу про квадрат і прямокутник.
Здається логічним оголосити клас Rectangle з атрибутами h і w (висота і ширина), а потім визначити клас Square, що успадковує Rectangle. Адже квадрат — це ж „є" прямокутник!
На жаль, така інтуїція не працює в об'єктно-орієнтованому проєктуванні.
Ця вправа є частиною курсу
Об'єктноорієнтоване програмування в Python
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Define a Rectangle class
____
# Define a Square class
____