#继承需要,先抽象再继承
'''实例化发生的过程:
1.创建一个对象
2. 把创建的对象传给自己得__init__,
3.如果自己没有,则把子类创建的对象传给父类的__init__的self
4.执行__init__
5.把self返回给alex
查找顺序
对象的内存空间——创建这个对象的类的内存空间——父类的内存空间
'''
# class Animal:
# def __init__(self,name,hp,dps):
# # print('===========')
# self.name=name
# self.hp=hp
# self.dps=dps
# def eat(self):
# print('%s吃药回血了'%self.name)
# class Person(Animal):
# def __init__(self,name,hp,dps,sex):
# #默认调自己的init,现要手动调父类
# # Animal.__init__(self,name,hp,dps)#方法1
# super().__init__(name,hp,dps) #方法2super(Person,self)跟super()一个概念
# self.sex=sex #派生属性
# class Dog(Animal):
# def __init__(self,name,hp,dps,kind):
# # Animal.__init__(self,name,hp,dps)
# super().__init__(name, hp, dps)
# self.kind=kind
# lxx=Person('lxx',200,300,'F')
# ha2=Dog('ha',300,500,'hashiqi')
# # print(lxx.__dict__)
# # print(ha2.__dict__)
# ha2.eat()
# lxx.eat()
#面试题
class Foo:
def __init__(self):
self.func()
def func(self):
print('in Foo')
class Son(Foo):
def func(self):
print('in Son')
Son()
#结果是?in Son
# self.func(),self本质上就是son的对象
转载于:https://www.cnblogs.com/lixiaoxuan/articles/9051458.html