init()的要点如下:
- 名称固定,必须为:init()
- 第一个参数固定,必须为:self。 self 指的就是刚刚创建好的实例对象。
- 构造函数通常用来初始化实例对象的实例属性,如下代码就是初始化实例属性:name 和 score。 def init(self,name,score): self.name = name #实例属性 self.score = score
- 通过“类名(参数列表)”来调用构造函数。调用后,将创建好的对象返回给相应的变量。 比如:s1 = Student(‘张三’, 80)
实例属性是从属于实例对象的属性,也称为“实例变量”。
他的使用有如下几个要点:
- 实例属性一般在__init__()方法中通过如下代码定义: self.实例属性名 = 初始值
- 在本类的其他实例方法中,也是通过 self 进行访问: self.实例属性名
- 创建实例对象后,通过实例对象访问: obj01 = 类名() #创建对象,调用__init__()初始化属性 obj01.实例属性名 = 值 #可以给已有属性赋值,也可以新加属性
实例方法是从属于实例对象的方法。
实例方法的定义格式如下: def 方法名(self [, 形参列表]):
函数体 方法的调用格式如下:
对象.方法名([实参列表]) 要点: - 定义实例方法时,第一个参数必须为 self。和前面一样,self 指当前的实例对象。
- 调用实例方法时,不需要也不能给 self 传参。self 由解释器自动传参。
定义了__call__方法的对象,称为“可调用对象”,即该对象可以像函数一样被调用。
__del__方法称为“析构方法”,用于实现对象被销毁时所需的操作。
比如:释放对象 占用的资源,例如:打开的文件资源、网络连接等。
Python 实现自动的垃圾回收,当对象没有被引用时(引用计数为 0),由垃圾回收器 调用__del__方法。
我们也可以通过 del 语句删除对象,从而保证调用__del__方法。 系统会自动提供__del__方法,一般不需要自定义析构方法。