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获取电脑硬件信息及状态的实现方法
Aug 29 Python
深入解析Python中的list列表及其切片和迭代操作
Mar 13 Python
Python数据分析中Groupby用法之通过字典或Series进行分组的实例
Dec 08 Python
python3读取excel文件只提取某些行某些列的值方法
Jul 10 Python
Python实现网站表单提交和模板
Jan 15 Python
matplotlib.pyplot绘图显示控制方法
Jan 15 Python
Django异步任务之Celery的基本使用
Mar 23 Python
Python实用工具FuckIt.py介绍
Jul 02 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
Sep 17 Python
Python连接Mysql进行增删改查的示例代码
Aug 03 Python
浅析python 字典嵌套
Sep 29 Python
解决pycharm下载库时出现Failed to install package的问题
Sep 04 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
咖啡界又出新概念,无需咖啡豆的分子咖啡
2021/03/03 咖啡文化
shopex中集成的站长统计功能的代码简单分析
2011/08/11 PHP
php实现读取手机客户端浏览器的类
2015/01/09 PHP
PHP实现的MD5结合RSA签名算法实例
2017/10/07 PHP
js为空或不是对象问题的快速解决方法
2013/12/11 Javascript
Jquery ajaxStart()与ajaxStop()方法(实例讲解)
2013/12/18 Javascript
使用js判断当前时区TimeZone是否是夏令时
2014/02/23 Javascript
jquery中checkbox全选失效的解决方法
2014/12/26 Javascript
javascript实现无限级select联动菜单
2015/01/02 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
jsp 网站引入外部css或者js失效问题解决
2016/10/31 Javascript
Vue.js实战之利用vue-router实现跳转页面
2017/04/01 Javascript
Vue中使用方法、计算属性或观察者的方法实例详解
2018/10/31 Javascript
jQuery移动端跑马灯抽奖特效升级版(抽奖概率固定)实现方法
2019/01/18 jQuery
jQuery创建折叠式菜单
2019/06/15 jQuery
uni-app微信小程序登录并使用vuex存储登录状态的思路详解
2019/11/04 Javascript
在Heroku云平台上部署Python的Django框架的教程
2015/04/20 Python
简单介绍Python的Django框架的dj-scaffold项目
2015/05/30 Python
如何使用七牛Python SDK写一个同步脚本及使用教程
2015/08/23 Python
解析Python中的eval()、exec()及其相关函数
2017/12/20 Python
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
2018/12/14 Python
Python多线程threading模块用法实例分析
2019/05/22 Python
pytorch中的上采样以及各种反操作,求逆操作详解
2020/01/03 Python
加拿大折扣、优惠券和交易网站:WagJag
2018/02/07 全球购物
以太网Ethernet IEEE802.3
2013/08/05 面试题
linux面试相关问题
2012/08/11 面试题
广告学专业毕业生自荐信
2013/09/24 职场文书
自我评价的范文
2014/02/02 职场文书
公务员保密承诺书
2014/03/27 职场文书
《回乡偶书》教学反思
2014/04/12 职场文书
入党介绍人评语
2014/05/06 职场文书
行政监察建议书
2014/05/19 职场文书
公司领导班子对照检查存在问题整改措施
2014/10/02 职场文书
2015年国庆节活动总结
2015/03/23 职场文书
中职班主任培训心得体会
2016/01/07 职场文书
浅谈Redis变慢的原因及排查方法
2022/06/21 Redis