python中__new__和__init__的区别

  • __init__是当实例对象创建完成后被调用的,然后设置对象属性的一些初始值
  • __new__是在实例创建之前被调用的,因为它的任务就是创建实例然后返回该实例,是个静态方法。
  • __init__ 方法为初始化方法, __new__方法才是真正的构造函数。
  • __new__方法默认返回实例对象供__init__方法、实例方法使用。
  • __init__ 方法为初始化方法,为类的实例提供一些属性或完成一些动作。
  • __new__ 方法创建实例对象供__init__ 方法使用,__init__方法定制实例对象。
  • __new__是一个静态方法,而__init__是一个实例方法。

猜你喜欢

转载自blog.csdn.net/oHenZiJue/article/details/80270530