1. 单继承
类实例化时,会创建一个self对象(本质是一个空字典)代表的就是该类实例化的对象,然后会自动调用__init__()初始化方法,如果该类没有,就去执行父类的初始化方法,但是注意这里的self代表的就是实例化的类生成的对象!!然后执行初始化方法,可以进行赋值,就是给self对象添加属性以及对应的属性值,可以拿着self对象操作对象属性,或者调用方法~
class Animal(): # 定义类 def __init__(self): # 初始化方法 print("执行Animal的__init__()方法") self.func() # 类内调用类中的其他方法,这里的self就是实例化的对象 def eat(self): # 定义方法 print("%s 正在吃。。。"%self.name) def drink(self): print('%s 正在喝。。。'%self.name) def func(self): print("Animal的func") class Dog(Animal): # 定义类,从Animal类继承,没有的话继承,有的话覆盖?? def bite(self): print("%s 会咬人"%self.name) def func(self): # Dog()类重新定义了func()方法 print("小狗的func函数") lunck=Dog() # 对Dog()类进行实例化为一个对象,这时候就会创建一个self对象(本质是一个空字典)然后执行__init__()初始化方法,但是Dog()类中并没有,所以去执行父类Animal中的__init__()方法 # 但是要注意self,是实例化的对象,在这里self它是由Dog类实例化的,代表的是Lucky 所以self.func()应该是Dog.func(lucky)《==》lunck.func()
运行结果:
执行过程: