在前面介绍过面向对象有四大属性,分别是抽象、继承、封装、多态,上一篇文章简单讲了类的用法链接在最下面,今天介绍类的重要属性:继承。
继承是面向对象语言的另一特性。类与类之间可以组成继承层次,一个类的定义(子类)可以定义在另一个已定义类(父类)的基础上。子类可以继承父类属性和方法,也可以覆写。
基类(也被称为超类)是指被抽象出来的一类东西,比如说,汽车,汽车就是一个基类,它可以有所有车都有的基本属性,比如四个轮子、车窗等,那下面继承它的子类可以是某一种特定的汽车,比如面包车、越野车、大货车等,它们会继承基类的属性,就是轮子、外形、车窗等,它们也有自己独有的东西,比如货车有车斗、每种车有自己的品牌、每辆车有自己的车牌等。这就是继承。
先看代码:还是用原先的代码:基类如下,基类是一个程序员抽象类,它有每个人的通用属性,姓名、年龄等。(由于我原先写好了继承,我们发现左边会有箭头提示,下面有继承它的类)。
然后是我写的子类:子类是python程序员,它继承了基类中的程序员的通用属性,年龄、姓名、体重,但是他也有自己的特有属性,language,指它掌握的编程语言。
下面是实例化对象进行调用用法:
下面详细介绍类里面一些基础的用法:
Super允许我们调用父类中的属性,对父类中的属性进行修改(覆写),像我上面的代码,初始化的时候调用父类的初始化函数,必须要用到super。
不过这样体现不出类的继承一般不用。
多继承:同时继承好几个类,不常见,先不讲了。
在Python中,实例从类中继承,而类继承于超类。以下是属性继承机制的核心观点。
超类列在了类开头的括号中。要继承另一个类的属性,把该类列在class语句开头的括号中就可以了。含有继承的类被称为子类,而子类所继承的类就是其超类。类从其超类中继承属性。就像实例继承其类中所定义的属性名一样,类也会继承其超类中定义的所有属性名称。
实例会继承所有可读取类的属性。每个实例会从创建它的类中获取变量名,此外,还有该类的超类。寻找变量名时,Python会检查实例,然后是它的类,最后是所有超类。
"news">干货!Python入门基础之面向对象二:类和实例、方法
码字不易,多多关注,谢谢。