什么是继承
在之前我们知道我们学习过面对对象的编程而这次的类的继承也是
让我们来通过一个例子了解它
人是面对对象的一个抽象他有着 年龄 姓名 性别 等等的属性
像人这一抽象在描述某一些人时并不清晰 像:抽象的 老师 学生
人就不能准确的描述老师和学生
在现实世界我们可以吧老师和学生抽象出另外的对象
在老师里有:科目 科龄 等等的属性
在学生里有:班级 分数 等等的属性
象这些都是老师和学生特有的属性但他们都是属于人这一个抽象
因此为了更好的编写代码和抽象代码我们就分别抽象出 人 老师 学生 这三个对象
老师和学生不仅仅有着自己独特的属性他也拥有人这一对象的属性这样的我们就称为继承
人为父类
老师和学生为子类 老师和学生都继承人这一属性的
作为类的继承有什么好处呢?
- 新类不需要重头编写
- 继承父类的所有属性,功能
- 子类只需要实现缺少的新功能
python继承类
对人类的抽象可以定义为Person类,而学生、老师等,也都是人类,所以,在Python当中,如果定义学生Student的类,可以继承Person类
class Person(object):
def __init__(self, name, gender):
self.name = name
self.gender = gender
接着定义Student类,在定义Student类的时候,由于继承了Person类,所以Student类自动拥有name、gender属性,因此,在定义Student类的时候,只需要把额外的属性加上即可
class Student(Person):
def __init__(self, name, gender, score):
super(Student, self).__init__(name, gender)
self.score = score
student = Student('Alice', 'girl', 100)
print(student.name) # ==> Alice
print(student.gender) # ==> girl
print(student.score) # ==> 100
在定义继承类的时候,有几点是需要注意的:
- class Student()定义的时候,需要在括号内写明继承的类Person
- 在__init__()方法,需要调用super(Student, self).__init__(name, gender),来初始化从父类继承过来的属性</