self
? Так что же с этим параметром self для всех клиентов
методы? Что это? Да ведь это, конечно, случай! Поставить другой
Кстати, такой метод, как снять, определяет инструкции для снятия
деньги со счета какого-то абстрактного клиента. призвание
jeff.withdraw (100.0) помещает эти инструкции для использования на jeff
экземпляр.
Так что, когда мы говорим, что отозвать (себя, количество): мы говорим, "вот как
вы снимаете деньги с объекта Customer (который мы будем называть self) и
долларовая цифра (которую мы назовем суммой). Я является примером
Клиент, который снимает деньги, вызывается. Это не я делаю
Аналогий тоже нет. jeff.withdraw (100.0) это просто сокращение для
Customer.withdraw (jeff, 100.0), что совершенно правильно (если не часто
видно) код.
init self может иметь смысл для других методов, но как насчет init ? Когда мы вызываем init , мы находимся в процессе создания объекта, так как же может существовать самость? Python позволяет нам расширять
паттерн самости, когда объекты строятся, хотя
это не совсем подходит. Просто представьте, что Джефф = Клиент ('Джефф
Knupp ', 1000.0) - это то же самое, что вызов jeff = Customer (jeff,' Jeff
Кнупп, 1000.0); Джефф, который был передан, также является результатом.
Вот почему, когда мы вызываем init , мы инициализируем объекты, говоря
такие вещи, как self.name = имя. Помните, так как «я» является примером,
это эквивалентно высказыванию jeff.name = name, которое совпадает с
jeff.name = 'Джефф Кнупп. Аналогично, self.balance = баланс одинаков
как jeff.balance = 1000.0. После этих двух строк мы рассмотрим
Объект клиента «инициализирован» и готов к использованию.
Будьте осторожны, что вы __init__
После завершения init вызывающая сторона может правильно предположить, что
Объект готов к использованию. То есть после jeff = Customer («Джефф Кнупп»,
1000.0), мы можем начать вносить и снимать звонки на jeff; Джефф - полностью инициализированный объект.