class Character(Entity):
def __init__(self, x, y, hp):
Entity.__init__(self, x, y)
self.hp = hp
self.items = []
Character
является дочерним классом родительского класса Entity
. Entity
класс также есть __init__
функция. Почему необходимо написать функции __init__
? Почему бы не написать только __init__()
для класса Character
, который заменил бы __init__()
на Entity
?Вложенный конструктор. Почему это требуется?
\ __ init__ не является конструктором – volcano
@volcano: технически вы правы, хотя для практических целей '__init__' используется для инициализации объекта (следовательно, он выполняет аналогичную задачу как конструкторы на других языках). –
конструкторы на других языках, хотя выделяют память и возвращают ссылку на объект – volcano