Junior — Middle
84
Python'da nesne oluşturma sürecinde __new__ metodunun rolü nedir?
AI'dan gelen yanıt
sobes.tech yapay zeka
Метод __new__ в Python отвечает за создание нового экземпляра класса. Он вызывается первым при создании объекта и отвечает за выделение памяти под объект. В отличие от __init__, который инициализирует уже созданный объект, __new__ возвращает сам объект.
Пример использования:
class MyClass:
def __new__(cls, *args, **kwargs):
print("Создаем объект")
instance = super().__new__(cls)
return instance
def __init__(self, value):
print("Инициализируем объект")
self.value = value
obj = MyClass(10)
Здесь сначала вызывается __new__, который создает объект, затем __init__ инициализирует его. Метод __new__ полезен, когда нужно контролировать процесс создания объекта, например, при реализации паттерна Singleton или при наследовании от неизменяемых типов.