#继承有父类的方法都继承过来,如果是私有的就继承不过来
#如果自己里面有这个方法,不满足,就覆盖了
#私有方法不支持继承
1、单继承
class Lw: #定义类
money = 10000
def eat(self): #吃饭功能
print("eat")
def __fly(self):
print("fly")
def make_money(self): #挣钱
print("make_money")
def driver(self,car): #第二种方法,driver方法
print("开"+car)
2、继承多个
class Test: #可继承多个,谁在前面先调用谁
@classmethod
def test(cls):
print("test")
def make_money(self):
print("test_make_money")
#driver方法
class Xw(Test,Lw): #继承两个类
def driver(self,car,feiji):
super().driver(car) #找父类,原来就有car
print("开"+feiji)
def eat(self):
print("new_eat")
class xw(Lw):#小王继承了这个类,如果一个类继承了另一个类的话就是它的父类
pass
xw = Xw() #实例化一下
print(xw.money)
xw.make_money()
xw.test()
xw.driver("汽车","飞机")
xw.eat()
3、重写父类方法
(1)直接重写父类方法:
def huaqian(self):
print("花钱")
# 重写父类方法
def make_money(self):
# 直接重写父类方法
print("赚钱,1000块钱")
return 500
(2)继承后修改:super()
class XXw(Lw):
def dubo(self):
#继承父类后 可以直接继承父类方法
self.eat()
print("赌博")
def make_money(self):
#调用父类方法,super 父类
f_monery=super().make_money()
cur_monery=f_monery+1000
print("赚钱,每天转%s"%cur_monery)