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

Объектно-ориентированное программирование основано на идее создания модели основной проблемы в ваших программах. Объектно-ориентированное программирование сокращает количество программных ошибок и способствует повторному использованию кода. Python - это объектно-ориентированный язык. У определенных в Python объектов есть следующие характеристики:

  • Тождество. Каждый объект должен быть индивидуальным, и должна существовать возможность проверки этого. Для этой цели существуют проверки is и is not.
  • Состояние. У каждого объекта должна быть возможность сохранения состояния. Для этой цели существуют атрибуты, такие как поля и переменные экземпляров.
  • Поведение. Для каждого объекта должна существовать возможность изменения состояния. Для этой цели существуют методы.

Python включает в себя следующие возможности поддержки объектно-ориентированного программирования:

  • Создание объектов на основе классов. Классы - это шаблоны для создания объектов. Объекты - это структуры данных со связанным поведением.
  • Наследование с полиморфизмом. Python поддерживает и одиночное, и множественное наследование. Методы всех экземпляров Python полиморфичны и могут быть перезаписаны подклассами.
  • Инкапсуляция с сокрытием данных. Python допускает сокрытие атрибутов. Получить доступ к скрытым атрибутам извне класса можно только через методы класса. Классы реализуют методы для изменения данных.