1、init
init就是初始化对象的特征的,因为对象必须得有一个地方来保存特征值,那这个就是init构造函数。它的作用就是让类的模板可以生成不同的对象
__init__构造函数和普通函数的区别?
构造函数不需要我们手动去调用,init会自动执行,并且没有返回值,没有return。
普通函数调用的时候,需要写上函数名和括号;若是在类里面的话,需要用对象加上这个函数名
2、self
Class Person():
def __init__ (self, a, b):#self表示实例,a,b表示要传入的参数
self.x=a
self.y=b
def xiaoming(self): #self的作用是调用init里实例属性的
XXXXX
def xiaohua(self,talk): #talk表示调用方法时需要传入的参数
XXXX
# 调用方法
A = Person(1,2) #生成实例A
#调用实例方法
A.xiaoming() #不需要再传一次,没有额外的参数
A.xiaohua('hello')
3、super
super是一个类,是一个内置类,super()是建立了一个super对象
Class Person:
def __init__(self,name):
self.name = name
Class Male(Person): #此处Male类继承了Persion类
def __init__(self, name):
super().__init__(name) #相当于调用Person类的__init__方法
# super(Male, self).__init__(name)
# Person.__init__(self,name)
self.gender = 'male'
m = Male('Peter')