python类的继承

作者:原创时间:2022-03-08
文档

python类的继承是什么?一起来看看小编今天的分享吧。

python类的继承可以理解成类之间的父类和子类型关系,假如我需要定义几个类,而类与类之间有一些公共的属性和方法,这时我就可以把相同的属性和方法作为基类的成员,而特殊的方法及属性则在本类中定义。这样子类只需要继承基类(父类),子类就可以访问到基类(父类)的属性和方法了,它提高了代码的可扩展性和重用行。

如下定义一个动物类Animal为基类,它基本两个实例属性name和age、一个方法call。

python3中所有类都可以继承于object基类。

class Animal(object):  
   def __init__(self, name, age):
       self.name = name
       self.age = age
   def call(self):
       print(self.name, '会叫')

现在我们需要定义一个Cat 猫类继承于Animal,猫类比动物类多一个sex属性。

class Cat(Animal):
   def __init__(self,name,age,sex):
       super(Cat, self).__init__(name,age) 
       self.sex=sex

不要忘记从Animal类引入属性。

if __name__ == '__main__':  
   c = Cat('喵喵', 2, '男') 
   c.call()

单模块被引用时下面代码不会受影响,用于调试,Cat继承了父类Animal的属性,输出 喵喵 会叫 ,Cat继承了父类Animal的方法。

注意:一定要用 super(Cat, self).__init__(name,age) 去初始化父类,否则,继承自 Animal的 Cat子类将没有 name和age两个属性。
函数super(Cat, self)将返回当前类继承的父类,即 Animal,然后调用__init__()方法,注意self参数已在super()中传入,在__init__()中将隐式传递,不能再写出self。

以上就是小编今天的分享了,希望可以帮助到大家。

显示全文
python string函数 python构造函数 python延时函数 debug error怎么解决 python读取json并解析 python 列表添加 python字典按值的大小排序 python 排序算法 spring boot mysql配置 vue动态绑定style js date加一天 字符转换成ascii码 c语言struct用法 java reentrantlock python tkinter教程 js获取日期 python numpy教程 opencv安装教程python js获取随机数 ubuntu卸载mysql python递归函数 python内置函数 python判断字符串相等 python查看已安装的包 python强制类型转换 python input函数怎么用 python类型转换 python split函数用法 python读取json python组合数据类型 python查看变量类型 python split函数 c++ template用法 老抽和生抽的区别 拉链下滑如何解决 防蓝光眼镜怎么辨别 葱怎么保存 老姜和生姜的区别 新鲜蘑菇怎么保存 猪脚和猪手有什么区别