НачатьНачать бесплатно

Квадрат и прямоугольник

Классический пример нарушения принципа подстановки Лисков — проблема круга и эллипса, которую иногда называют проблемой квадрата и прямоугольника.

На первый взгляд кажется вполне логичным определить класс Rectangle с атрибутами h и w (высота и ширина), а затем создать класс Square, унаследованный от Rectangle. Ведь квадрат «является» прямоугольником!

К сожалению, эта интуиция не работает в объектно-ориентированном проектировании.

Это упражнение является частью курса

Объектно-ориентированное программирование на Python

Посмотреть курс

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Define a Rectangle class
____

# Define a Square class
____
Редактировать и запускать код