__ init__ в качестве конструктора?

Погрузиться в Python -

Заманчиво, но неправильно назовите это конструктором класс. Заманчиво, потому что выглядит как конструктор (по соглашению, __ init __ - первый метод, определенный для класса), действует как один (он первый фрагмент кода, выполненный в вновь созданный экземпляр класса), и даже звучит как единица («инициализация» конечно предлагает конструктор иш природа). Неправильно, потому что объект уже построен time __ init __ вызывается, и вы уже есть действительная ссылка на новый экземпляр класса.

Цитата предполагает, что неправильно вызывать __ init __ как конструктор , потому что объект уже построен к моменту вызова __ init __ . Но! У меня всегда было впечатление, что конструктор вызывается только после создания объекта, потому что он по сути используется для инициализации элементов данных экземпляра, что не имело бы смысла, если бы объект не существовал к моменту вызова конструктора ? (из фона C ++ / Java)

40
задан Martin Beckett 18 March 2019 в 02:15
поделиться