python中子类与父类的关系基础知识点


Posted in Python onFebruary 02, 2021

在对于python中类的使用上,我们分出了子类和父类两种。对于这二者之间的关系,我们可以简单理解为继承。不过python中加入了实例的讨论,那么对于继承后的子类来说,父类的实例是否被继承又是我们所需要思考的问题。下面我们就子类和父类进行简单介绍,然后就二者之间的继承关系重点分析。

1.概念

子类和父类主要描述的是类之间的继承关系,即所属关系。继承的类可在被继承的类的基础上添加格外的参数和行为,新类称为子类,扩展类;被继承的类称为基类、父类或者超类。

2.继承关系

子类与父类的关系是 “is” 的关系,如上 Cat 继承于 Animal 类,我们可以说:

“A”是 Animal 类的实例,但,“A”不是 Cat 类的实例。

“C”是 Animal 类的实例,“C”也是 Cat 类的实例。

判断对象之间的关系,我们可以通过 isinstance (变量,类型) 来进行判断:

print('"A" IS Animal?', isinstance(A, Animal))
print('"A" IS Cat?', isinstance(A, Cat))
print('"C" IS Animal?', isinstance(C, Animal))
print('"C" IS Cat?', isinstance(C, Cat))

Python实现子类调用父类的方法

python和其他面向对象语言类似,每个类可以拥有一个或者多个父类,它们从父类那里继承了属性和方法。如果一个方法在子类的实例中被调用,或者一个属性在子类的实例中被访问,但是该方法或属性在子类中并不存在,那么就会自动的去其父类中进行查找。

继承父类后,就能调用父类方法和访问父类属性,而要完成整个集成过程,子类是需要调用的构造函数的。

子类不显式调用父类的构造方法,而父类构造函数初始化了一些属性,就会出现问题
如果子类和父类都有构造函数,子类其实是重写了父类的构造函数,如果不显式调用父类构造函数,父类的构造函数就不会被执行,导致子类实例访问父类初始化方法中初始的变量就会出现问题。

到此这篇关于python中子类与父类的关系基础知识点的文章就介绍到这了,更多相关python中子类与父类的关系内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python聊天程序实例代码分享
Nov 18 Python
用python + openpyxl处理excel2007文档思路以及心得
Jul 14 Python
python中map、any、all函数用法分析
Apr 21 Python
python中nan与inf转为特定数字方法示例
May 11 Python
numpy中实现二维数组按照某列、某行排序的方法
Apr 04 Python
利用anaconda保证64位和32位的python共存
Mar 09 Python
python3 打印输出字典中特定的某个key的方法示例
Jul 06 Python
Python 类属性与实例属性,类对象与实例对象用法分析
Sep 20 Python
python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例
Mar 06 Python
python按照list中字典的某key去重的示例代码
Oct 13 Python
python 爬取小说并下载的示例
Dec 07 Python
pytorch中的numel函数用法说明
May 13 Python
python中time包实例详解
Feb 02 #Python
python+playwright微软自动化工具的使用
Feb 02 #Python
python爬虫智能翻页批量下载文件的实例详解
Feb 02 #Python
Python3.9.0 a1安装pygame出错解决全过程(小结)
Feb 02 #Python
python3.9.1环境安装的方法(图文)
Feb 02 #Python
M1芯片安装python3.9.1的实现
Feb 02 #Python
python 使用OpenCV进行简单的人像分割与合成
Feb 02 #Python
You might like
个人站长制做网页常用的php代码
2007/03/03 PHP
php实现MD5加密16位(不要默认的32位)
2013/08/12 PHP
利用yahoo汇率接口实现实时汇率转换示例 汇率转换器
2014/01/14 PHP
PHP Streams(流)详细介绍及使用
2015/05/12 PHP
深入解析PHP的Yii框架中的event事件机制
2016/03/17 PHP
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
JS使用oumousemove和oumouseout动态改变图片显示的方法
2015/03/31 Javascript
JS 对象(Object)和字符串(String)互转方法
2016/05/20 Javascript
JS生成不重复的随机数组的简单实例
2016/07/10 Javascript
JS自动生成动态HTML验证码页面
2017/06/14 Javascript
浅谈js中的this问题
2017/08/31 Javascript
基于 flexible 的 Vue 组件:Toast -- 显示框效果
2017/12/26 Javascript
利用React Router4实现的服务端直出渲染(SSR)
2019/01/07 Javascript
python多重继承实例
2014/10/11 Python
Python中的两个内置模块介绍
2015/04/05 Python
Python中的模块导入和读取键盘输入的方法
2015/10/16 Python
浅析Python中signal包的使用
2015/11/13 Python
Python批量创建迅雷任务及创建多个文件
2016/02/13 Python
Python读取txt内容写入xls格式excel中的方法
2018/10/11 Python
pyinstaller参数介绍以及总结详解
2019/07/12 Python
IronPython连接MySQL的方法步骤
2019/12/27 Python
python GUI库图形界面开发之PyQt5线程类QThread详细使用方法
2020/02/26 Python
详解通过变换矩阵实现canvas的缩放功能
2019/01/14 HTML / CSS
trivago美国:全球最大的酒店价格比较网站
2018/01/18 全球购物
施华洛世奇西班牙官网:SWAROVSKI西班牙
2019/06/06 全球购物
SQL里面IN比较快还是EXISTS比较快
2012/07/19 面试题
医院实习接收函
2014/01/12 职场文书
房地产开发项目建议书
2014/05/16 职场文书
法定代表人授权委托书范文
2014/08/02 职场文书
创先争优公开承诺书
2014/08/30 职场文书
2014年社区妇联工作总结
2014/12/02 职场文书
初中家长意见
2015/06/03 职场文书
pytest进阶教程之fixture函数详解
2021/03/29 Python
numpy数据类型dtype转换实现
2021/04/24 Python
默认网关不可用修复后过一会又不好使了解决方法
2022/04/08 数码科技
springboot创建的web项目整合Quartz框架的项目实践
2022/06/21 Java/Android