Python 子类继承多个父类属性
Python 子类继承多个父类属性
- 可能存在的误区
- 正确继承方法
可能存在的误区
python允许子类同时继承多个父类。但是在子类初始化父类时,单继承和多继承稍有不同。使用单继承的初始化方法会导致父类属性无法全部继承。
单继承方式是错误的,如下:
class A:def __init__(self):self.a = 'a'class B:def __init__(self):self.b = 'b'class C(A, B):def __init__(self):super().__init__()c = C()
print(c.a)
print(c.b)
能够正确打印出a的值,但是print(c.b)会报错:
AttributeError: ‘C’ object has no attribute ‘b’
正确继承方法
同时继承多个父类时,可以显式的初始化每个父类,并且是用父类名初始化。如下所示:
class A:def __init__(self):self.a = 'a'class B:def __init__(self):self.b = 'b'class C(A, B):def __init__(self):A.__init__(self)B.__init__(self)c = C()
print(c.a)
print(c.b)
Python 子类继承多个父类属性相关推荐
- python子类继承父类特性,pycharm上面已经提示继承了,为什么会报没有该特性的错误?
因为在子类里覆盖了父类的__init__ 如果需要调用父类用super class A(object):def __init__(self):self.a = 1def fun(self):print ...
- 在C++中子类继承和调用父类的构造函数方法
构造方法用来初始化类的对象,与父类的其它成员不同,它不能被子类继承(子类可以继承父类所有的成员变量和成员方法,但不继承父类的构造方法).因此,在创建子类对象时,为了初始化从父类继承来的数据成员,系统需 ...
- python子类继承父类属性实例_Python实现子类调用父类的初始化实例
前言 python中进行面向对象编程,当在子类的实例中调用父类的属性时,由于子类的__init__方法重写了父类的__init__方法,如果在子类中这些属性未经过初始化,使用时就会出错. 例如以下的代 ...
- python子类继承父类属性实例_python – 从子类内的父类访问属性
在类定义期间,没有任何继承的属性可用: >>> class Super(object): class_attribute = None def instance_method(sel ...
- Python 子类继承父类
1.一个类A继承另一个类B,就表示类A中可以直接调用类B中的内容,可以防止代码冗余. 2.继承的语法: class DerivedClassName(modname.BaseClassName) De ...
- python子类继承父类构造函数
1.在子类中需要父类的构造方法就需要调用父类的构造方法,或者不重写父类的构造方法. 子类不重写 init,实例化子类时,会自动调用父类定义的 init. class Father(object): # ...
- Python子类继承父类构造函数说明
1.子类不重写__init__,实例化子类时,会自动调用父类定义的__init__ class Father(object):def __init__(self, name):self.name = ...
- 子类继承多个父类总结
class Eat {void eat() {print('吃');} }class Sleep {void sleep() {print('睡');} }class Person with Eat, ...
- java 父类是抽象类 定义private的属性 子类继承_java继承、多态、接口、抽象类定义及应用...
继承:关键字extends java 中继承是单继承 允许多个子类继承一个父类,不允许一个子类继承多个父类. 继承是继承父类的所有属性和方法,但并不是所有的属性和方法都可被子类调用: 子类继承父类是必 ...
最新文章
- numpy库:常用基本
- spring整合jdbc
- ajax联系人数,setInterval定时调用ajax实现在线人数统计
- MongoDB数据库设计中6条重要的经验法则
- jenkins没安装git报错
- RabbitMQ有5种工作模式
- Nginx 静态文件服务器搭建及autoindex模块解析
- python机器学习系列教程——深度学习框架比较TensorFlow、Theano、Caffe、SciKit-learn、Keras
- 基于Go的挑战程序设计竞赛的进化之路①
- matlab 频率分辨率,功率谱、频率分辨率、频谱泄漏与窗函数
- oracle 12C 静默安装
- XML基础复习[整理][转载]
- JavaScript的执行机制——作用域链和闭包
- Linux常见的压缩工具
- 微星主板黑苹果_技嘉X79-UD7主板设置一键启动u盘方法【详解】
- bhu1272小希的迷宫
- 金蝶BOS8.2 EAS客户端一直初始化解决方案
- EXP-00091:Exporting questinable statistics.
- 使用windows电脑制作mac启动盘
- 基于摄像头的签到系统(考试)(三)----tkinter