2.继承性
继承:
使用场景:
1).生活层面:。。。
2).计算机层面:
两部分组成,一部分我们称为父类(基类、超类、superclass),另一部分我们称为子类(派生类、subclass),
子类可以使用父类中的成员(使用权)
继承性的好处:
1).代码复用性变强
2).代码扩展性变强
3).代码维护性变好
4).代码阅读性变好
继承性弊端:
类和类之间是一种强耦合关系
继承的好处要远远多于弊端,所以我们还是要经常使用继承的(合理),切记不能为了继承而继承
分析:
继承体系可以很庞大(呈现树状结构图),
越往上层的类,感觉越模糊,越不清晰
越往下层的类,感觉越清晰,越具体
所以得出结论,在之后的开发过程中创建父类的可能性变低,子类实例化的可能性极高
演示单继承的结构和使用:
父类:Person
子类:Teacher
class Person: def __init__(self,name,age): print(‘我是Person类的构造...‘) self.name=name self.age=age #吃和睡 def eat(self): print(‘吃一个...‘) def sleep(self): print(‘睡一个...‘)
代码:(Person),就让Teacher类和Person发生继承关系
Person:父类
Teacher:子类
class Teacher(Person): def __init__(self,name,age,salary): print(‘我是Teacher类的构造...‘) self.salary=salary ‘‘‘ 为了给父类Person中的name和age属性赋值, 所以我们需要在子类构造函数中显示的调用父类构造来实现 关键字:super ‘‘‘ super().__init__(name,age) # super(Teacher, self).__init__(name,age) # Person.__init__(self,name,age) #教书 def teach(self): print(‘教书育人...‘) #实例化子类对象-->Teacher对象 t=Teacher(‘joy‘,34,10000.0) #调用父类的属性 print(t.name,t.age) #调用子类的属性 print(t.salary) #调用父类函数 t.eat() t.sleep() #调用子类的函数 t.teach()
原文:https://www.cnblogs.com/hankleo/p/10460459.html