📦 Репозиторий занятия 70

Урок 70. Наследование и полиморфизм

Как работать с репозиторием

Идите по карточкам сверху вниз: сначала сформулируйте ожидаемый результат, затем откройте полный файл, проверьте предположение и ответьте на вопрос для самопроверки. Фрагменты не обрезаются.

Маршрут изучения

  1. Предскажите: прочитайте роль файла и сформулируйте ожидаемый результат.
  2. Исследуйте: откройте исходник и найдите перечисленные ключевые понятия.
  3. Измените: поменяйте одно условие или значение и объясните новый результат.
  4. Проверьте: ответьте на вопрос карточки без копирования кода.

Файлы: рекомендуемый порядок

1
MarkdownРазбор концепции

less_36__Inheritance_and_polymorphism/theory_01__4_pillars_of_the_OOP.md

Сначала выделите правило и объясните своими словами, затем проверьте каждый пример.

Разделы: 4 столпа (кита, основы) ООП; 1. Инкапсуляция (Encapsulation); print(account.__balance) # Ошибка! Доступ запрещён

Ключевые понятия: функции, классы и объекты, ветвление, циклы
Проверьте себя: Какое правило из файла вы сможете применить без подсказки?
Открыть полный файл →
2
MarkdownРазбор концепции

less_36__Inheritance_and_polymorphism/theory_02__super.md

Сначала выделите правило и объясните своими словами, затем проверьте каждый пример.

Разделы: 1. Что такое `super()`; 2. Пример "жёсткого" базового наследования (неправильно!); 3. Пример "гибкого" базового наследования (правильный)

Ключевые понятия: функции, классы и объекты
Проверьте себя: Какое правило из файла вы сможете применить без подсказки?
Открыть полный файл →
3
MarkdownРазбор концепции

less_36__Inheritance_and_polymorphism/theory_03__isinstance_and_issubclass.md

Сначала выделите правило и объясните своими словами, затем проверьте каждый пример.

Разделы: 1. `isinstance(obj, classinfo)`; Можно проверять несколько классов сразу; 2. `issubclass(class, classinfo)`

Ключевые понятия: классы и объекты
Проверьте себя: Какое правило из файла вы сможете применить без подсказки?
Открыть полный файл →
4
MarkdownРазбор концепции

less_36__Inheritance_and_polymorphism/theory_04__hasattr.md

Сначала выделите правило и объясните своими словами, затем проверьте каждый пример.

Разделы: Функция `hasattr`; Проверяем существование атрибутов

Ключевые понятия: функции, классы и объекты
Проверьте себя: Какое правило из файла вы сможете применить без подсказки?
Открыть полный файл →
5
MarkdownРазбор концепции

less_36__Inheritance_and_polymorphism/theory_05__deep_understanding_inheritance.md

Сначала выделите правило и объясните своими словами, затем проверьте каждый пример.

Разделы: Почему Student не считает свои объекты?

Ключевые понятия: функции, классы и объекты
Проверьте себя: Какое правило из файла вы сможете применить без подсказки?
Открыть полный файл →
6
MarkdownРазбор концепции

less_36__Inheritance_and_polymorphism/theory_06__deep_understanding_inheritance_explanation.md

Сначала выделите правило и объясните своими словами, затем проверьте каждый пример.

Разделы: Почему Student не считает свои объекты?; True; Student: 1 Person 1

Ключевые понятия: функции, классы и объекты
Проверьте себя: Какое правило из файла вы сможете применить без подсказки?
Открыть полный файл →