Python中的 new 方法和 init 方法是两个非常重要的方法,也是面向对象编程中常用的两个方法。在 Python 类中,这两个方法的执行顺序及参数关系是我们需要深入了解的内容。本文将从实例化对象的过程中,对这两个方法的执行进行分析,以及使用案例进行详细的探讨。
一、Python类中的__new__方法和__init__方法
在 Python 中,当我们创建一个新对象时,会首先调用 new 方法来创建这个对象,然后再调用 init 方法为该对象添加属性和方法。简单的说,“new 方法是负责创建对象的,init 方法是负责初始化对象的。”
1. new 方法的执行顺序
new 方法位于类的静态方法中,并且必须返回一个类的实例。当我们创建一个新对象时,会首先调用 new 方法来创建这个对象。具体执行顺序如下:
- 实例化一个新的对象
- 如果类定义了 new 方法,则调用 new 方法创建实例
- 如果没有定义 new 方法,则调用父类的 new 方法来创建实例
- 最后返回一个类的实例
2. init 方法的执行顺序
init