Module (10%)
Section (89%)

Ваш первый класс

Объектное программирование - это искусство определения и расширения классов. Класс - это модель очень специфической части реальности, отражающая свойства и действия, встречающиеся в реальном мире.

Классы, определенные в начале, являются слишком общими и неточными, чтобы охватить как можно большее количество реальных случаев.

Нет никаких препятствий для определения новых, более точных подклассов. Они унаследуют все от своего суперкласса, поэтому работа, затраченная на его создание, не пропадет даром.

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

Процесс не обязательно должен иметь конец. Вы можете создать столько классов, сколько вам нужно.

 

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

Пришло время определить самый простой класс и создать объект. Посмотрите на пример ниже:

class TheSimplestClass: pass

Мы определили класс. Класс довольно простой: у него нет ни свойств, ни деятельности. На самом деле он пуст, но пока это не имеет значения. Чем проще класс, тем лучше для наших целей.

Определение начинается с ключевого слова class. За ключевым словом следует идентификатор, который будет называть класс (примечание: не путайте его с именем объекта - это две разные вещи).

Затем Вы добавляете двоеточие (:), поскольку классы, как и функции, образуют собственный вложенный блок. Содержимое внутри блока определяет все свойства и действия класса.

Ключевое слово pass заполняет класс ничем в нашем случае. Он не содержит никаких методов или свойств.



Ваш первый объект

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

Представьте, что Вы хотите создать один (ровно один) объект класса TheSimplestClass.

Для этого Вам нужно назначить переменную для хранения вновь созданного объекта этого класса и одновременно создать объект.

Вы делаете это следующим образом:

my_first_object = TheSimplestClass()

Примечание:

  • имя класса пытается сделать вид, что это функция - вы это видите? Мы скоро это обсудим;
  • вновь созданный объект оснащен всем, что приносит класс; так как этот класс совершенно пустой, объект тоже пустой.
 

Акт создания объекта выбранного класса также называется экземпляром (поскольку объект становится экземпляром класса).

Давайте ненадолго оставим классы в покое, так как сейчас мы скажем Вам несколько слов о стеках. Мы знаем, что концепция классов и объектов может быть еще не полностью ясна. Не волнуйтесь, мы все объясним очень скоро.