python的继承知识点总结
作者:张金龙java 发布时间:2022-12-10 11:21:28
python继承,python丰富的类因为继承而变得多姿多彩,如果语言不支持继承,那么类就没什么优势。
1、首先我们来定义两个类
一个dog类,一个bird类class Dog: def sleeping(self): print ('dog 正在睡觉') def speaking(self): print('汪汪')class Bird: def flying(self): print('正在飞') def speaking(self): print('叽叽叽')
2、我们先调用bird类来看看 输出结果
实例化对象,然后调用它的方法
myani=Bird()print(myani.flying(),myani.speaking())
输出
正在飞
叽叽叽
3、我们定义一个cat类来继承dog类,看看它的调用
重写speaking方法,
class Cat(Dog): def speaking(self): print ('喵喵')mycat=Cat()print(mycat.speaking(),mycat.sleeping())
输出:
喵喵
dog 正在睡觉
可以看出叫声变了 睡觉没变,因为我们只重写了speaking方法
4、我们在定义一个类来继承 bird类
我们不对 父类重写,而是进行扩展,子类多了方法sleeping,这也是类的优点,可以扩展
class MaoTouYing(Bird): def sleeping(self): print('猫头鹰白天睡觉maotouying =MaoTouYing()print(maotouying.sleeping(),maotouying.speaking(),maotouying.flying())
输出结果:
猫头鹰白天睡觉
叽叽叽
正在飞
(None, None, None)
5、下面我们来定义一个多继承
如下所示,我们不对字类进行任何扩展,或者重写,直接让它继承父类
class FlyCat(Dog,Bird): passflycat=FlyCat()print(flycat.flying(),flycat.speaking(),flycat.sleeping())
输出结果:
正在飞
汪汪
dog 正在睡觉
(None, None, None)
6、细心的朋友注意到,以上调用都会输出 None,那是python默认都有一个返回值,我们的方法都是 print,所以默认返回None
7、当两个父类中有相同方法时候,调用继承的第一个父类中的方法
如步骤5中,父类都有sleeping方法,那么调用将返回第一个方法,输出‘dog 正在睡觉'
以上内容大家如果有还不明白的可以参考脚本之家其他关于python继承的文章,感谢你的支持。
来源:https://jingyan.baidu.com/article/54b6b9c0be8cd52d583b47c3.html
猜你喜欢
- 用法: 按住鼠标左键拖拽一个框后释放洗洗睡了<!DOCTYPE html public "-//W3C//DTD XHTML
- 代码如下:'===================================== '转换内容,防止意外 '==
- 安装依赖1)下载安装opencv-2.4.9,并将cv2.pyd拷贝到python安装目录的site-package下2)pip insta
- 前段时间嗷嗷有发过"好玩的放大镜效果",今天看了下,发现还有简单的方法也能够实现,即利用内外补丁的调整。有兴趣的可以在琢
- 开发过程中,错误免不了。为了纠正错误与规范化。可以使用MS SQL Server的系统存储过程sp_rename与OBJECTPROPERT
- 本文实例讲述了Golang正整数指定规则排序算法问题。分享给大家供大家参考,具体如下:给定字符串内有很多正整数,要求对这些正整数进行排序,然
- 代码如下:<% '--------定义部份------------------ Dim XH_P
- python ThreadPoolExecutor线程池的工作线程中出现异常时,主线程不会捕获异常。解决方法1:直接在需要执行的任务方法中添
- 做项目的时候,一位同事导数据的时候,不小心把一个表中的数据全都搞重了,也就是说,这个表里所有的记录都有一条重复的。这个表的数据是千万级的,而
- asp在线备份sql server数据库: 1、备份sqlserver 代码如下:<% SQL="backup&n
- 插件下载:blueideasearch.xpi首先第一步 说一下怎么样查看firefox插件的源码, 就我上边写的那个东西,把它下载下来.将
- 本文实例讲述了js+php实现静态页面实时调用用户登陆状态的方法。分享给大家供大家参考。具体分析如下:在程序开发中,经常会把页面做成html
- 页面大小、窗口大小和滚动条位置这三个数值在不同的浏览器例如Firefox和IE中有着不同的实现。即使在同一种浏览器例如IE中,不同版本也有不
- 下面我们用HTML来上传3个文件看看,它包含了文本描述字段和多项选择:upload.htm<HTML> <BOD
- 这几天一直困惑我的问题,我觉得pycharm应该也是有的啊,偶然间找到了这个。把那个框里的选中,就可以了。ps:我的是 PyCharm 20
- 上段时间,团队内部有过好几次几次给力的分享,这里对西风师傅分享的继承机制稍作整理一下,适当加了写口语化的描述,留作备案。一、讲个故事吧澄清在
- 今天在编写PHPDoc的导出文档的时候发现一个很郁闷的错误,虽然这个warning不是什么重要错误,但是看着总是很不爽的。于是就去网上找了很
- 如果你已经理解了block formatting contexts那么请继续,否则请先看看这篇文章。Overflow能够做一些很牛掰的事情,
- 一个单步的动作,用了这个脚本,就可以重复执行100遍1000遍。上面就是一个路径描边100遍的效果,吼吼~ 不知道大家明白用处没有?(以前老
- 富文本编辑器,Rich Text Editor, 简称 RTE, 它提供类似于 Microsoft Word 的编辑功能,容易被不会编写 H