Python基础类继承重写实现原理解析


Posted in Python onApril 03, 2020

1.继承

继承是面向对象三大特性之一

- 通过继承我们可以使用一个类获取到其他类中的属性和方法
- 在定义类时,可以在类名后的括号中指定当前类的父类(超类、基类、super)
- 子类(衍生类)可以直接继承父类中的所有的属性和方法

注意事项:

a.在创建类时,如果省略了父类,则默认父类为object, object是所有类的父类,所有类都继承自object。

b. isinstance()用来检查一个对象是否是一个类的实例

如果这个类是这个对象的父类,也会返回True

所有的对象都是object的实例

2.多重继承

在Python中是支持多重继承的,也就是我们可以为一个类同时指定多个父类

可以在类名的()后边添加多个类,来实现多重继承

多重继承,会使子类同时拥有多个父类,并且会获取到所有父类中的方法

如果多个父类中有同名的方法,则会现在第一个父类中寻找,然后找第二个,然后找第三个。。。前边父类的方法会覆盖后边父类的方法。

注意:

类名.__bases__ 这个属性可以用来获取当前类的所有父类

多重继承示例:

class A(object):
  def test(self):
    print('AAA')

class B(object):
  def test(self):
    print('B中的test()方法~~')

  def test2(self):
    print('BBB') 
class C(A,B):
  pass
c = C()
c.test()
# 执行结果:AAA

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编程给numpy矩阵添加一列方法示例
Dec 04 Python
Python即时网络爬虫项目启动说明详解
Feb 23 Python
Python识别快递条形码及Tesseract-OCR使用详解
Jul 15 Python
python  文件的基本操作 菜中菜功能的实例代码
Jul 17 Python
django基于存储在前端的token用户认证解析
Aug 06 Python
python图形用户接口实例详解
Dec 16 Python
浅谈Python中os模块及shutil模块的常规操作
Apr 03 Python
Python 中由 yield 实现异步操作
May 04 Python
解决Keras中循环使用K.ctc_decode内存不释放的问题
Jun 29 Python
python 如何停止一个死循环的线程
Nov 24 Python
python3实现飞机大战
Nov 29 Python
Django实现简单的分页功能
Feb 22 Python
Django实现列表页商品数据返回教程
Apr 03 #Python
Python第三方库的几种安装方式(小结)
Apr 03 #Python
在PyTorch中使用标签平滑正则化的问题
Apr 03 #Python
pip install 使用国内镜像的方法示例
Apr 03 #Python
pycharm解决关闭flask后依旧可以访问服务的问题
Apr 03 #Python
Windows+Anaconda3+PyTorch+PyCharm的安装教程图文详解
Apr 03 #Python
基于python图像处理API的使用示例
Apr 03 #Python
You might like
php命名空间学习详解
2014/02/27 PHP
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
2014/07/01 PHP
thinkphp的dump函数无输出实例代码
2016/11/15 PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
2018/06/13 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
javascript读取RSS数据
2007/01/20 Javascript
优化网页之快速的呈现我们的网页
2007/06/29 Javascript
jquery中的ajax方法怎样通过JSONP进行远程调用
2014/05/04 Javascript
JS往数组中添加项性能分析
2015/02/25 Javascript
Bootstrap每天必学之进度条
2015/11/30 Javascript
基于Bootstrap的后台管理面板 Bootstrap Metro Dashboard
2016/06/17 Javascript
浅谈js对象属性 通过点(.) 和方括号([]) 的不同之处
2016/10/29 Javascript
javascript设计模式之中介者模式学习笔记
2017/02/15 Javascript
vue中使用gojs/jointjs的示例代码
2018/08/24 Javascript
小程序云开发实战小结
2018/10/25 Javascript
JavaScript数据结构与算法之二叉树实现查找最小值、最大值、给定值算法示例
2019/03/01 Javascript
原生js实现随机点名功能
2019/11/05 Javascript
JS+CSS实现动态时钟
2021/02/19 Javascript
[01:04:29]DOTA2-DPC中国联赛 正赛 Phoenix vs XG BO3 第二场 1月31日
2021/03/11 DOTA
Python中元组,列表,字典的区别
2017/05/21 Python
python中pip的安装与使用教程
2018/08/10 Python
python3使用flask编写注册post接口的方法
2018/12/28 Python
详解Python用户登录接口的方法
2019/04/17 Python
PyTorch搭建多项式回归模型(三)
2019/05/22 Python
更新pip3与pyttsx3文字语音转换的实现方法
2019/08/08 Python
对CSS3选择器的研究(详解)
2016/09/16 HTML / CSS
html5 canvas fillRect坐标和大小的问题解决方法
2014/03/26 HTML / CSS
雅诗兰黛旗下走天然植物路线的彩妆品牌:Prescriptives
2016/08/14 全球购物
英国第二大营养品供应商:Vitabiotics
2016/10/01 全球购物
送给程序员的20个Java集合面试问题
2014/08/06 面试题
资产经营总监岗位职责范文
2013/12/01 职场文书
团队口号大全
2014/06/06 职场文书
2015年教导处教学工作总结
2015/07/22 职场文书
2015国庆节66周年标语
2015/07/30 职场文书
用基于python的appium爬取b站直播消费记录
2021/04/17 Python
理解python中装饰器的作用
2021/07/21 Python