1、先来定义一个公司的类:# -*- coding: utf-8 -*-class Group: weizhi = '大陆' def __init__(self): print('启动资金是100万') self.money = 1000000 def goumaishebei(self): print('需要29万') self.money = 710000 print('还剩余资金%s'%self.money)a = Group()print('公司位于',a.weizhi)a.goumaishebei()----------------------------类的名称是Group;属性是位于大陆;a是一个具体的公司。
2、然后再来一个子公司的类:class s_Group(Group): def goumaixinshebei(self): print('需要1万') self.money = 990000 print('剩余资金是%s'%self.money)aa = s_Group()其中,类的名称是s_Group;s_Group继承了Group,所以Group成为了s_Group的变量;aa是一个子公司,继承了Group的100万启动资金。
3、如果aa要购买设备:aa.goumaishebei()成功运行,说明aa成功继承了总公司购买设备的方法。
4、然后,aa需要继续购买新设备:aa = s_Group()aa.goumaishebei()aa.goumaixinshebei()出错了,买了新设备,剩余资金怎么会增多呢?这是因为购买新设备的时候,money被重新定义了。
5、因此,上面的子公司的类需要修改一下:class s_Group(Group): def goumaixinshebei(self): print('需要1万') self.money = 700000 print('剩余资金是%s'%self.money)
6、如果一开始有两类大公司:class IT: weizhi = '大陆' def __init__(self): print('启动资金是100万') self.money = 1000000 def goumaishebei(self): print('需要29万') self.money = 710000 print('还剩余资金%s'%self.money)class jixie: weizhi = '大陆' def __init__(self): print('启动资金是200万') self.money = 1000000 def goumaishebei(self): print('需要29万') self.money = 1710000 print('还剩余资金%s'%self.money)class AI(IT,jixie): passaa = AI()其中,IT是软件设计公司,jixie是机械设计公司,而AI是两类公司的合资类公司;aa是一个具体的AI公司,它的启动资金是继承了IT的100万,而不是jixie的200万。
7、aa购买设备的方法,也继承了IT的。
8、如果我们重置AI类公司的初始化信息:class AI(IT,jixie): weizhi = 'American' def __init__(self): print('启动资金是300万') self.money = 3000000这样,AI类公司就出现了新的初始化信息;但是IT公司的初始化信息没有改变。