在Python中,`__new__`是一个静态方法,用于控制对象的创建过程。当您创建一个新对象时,`__new__`方法会在`__init__`方法之前被调用。`__new__`方法的主要任务是创建并返回一个新的对象实例。
```python
class MyClass:
_instance = None
def __new__(cls, *args, kwargs):
if not cls._instance:
cls._instance = super().__new__(cls)
return cls._instance
def __init__(self, value):
self.value = value
在这个例子中,`MyClass`使用`__new__`方法实现单例模式,确保无论多少次实例化,都返回同一个对象实例。
需要注意的是,`__new__`方法只负责创建对象实例,对象的初始化(如属性赋值等)则由`__init__`方法完成。