对python中类的继承与方法重写介绍


Posted in Python onJanuary 20, 2019

1.单继承

父类也叫基类

子类也叫派生类

如下所示,继承的关系:

对python中类的继承与方法重写介绍

继承的书写格式:

class 子类(父类):

     方法

实例:

class Animal:
    def eat(self):
       print("-----吃-------")
    def drink(self):
       print("-----喝--------")
class Dog(Animal):
     def drak(self):
       print("汪汪叫")
a=Animal()
a.eat()

孙类是可以继承爷爷类的,如下所示:

class Animal:
 def eat(self):
 print("---吃-----")
 def drink(self):
 print("----喝-----")
 def sleep(self):
 print("----睡觉-----")
class Dog(Animal):
 def bark(self):
 print("---汪汪叫----")
 
class Xiaotq(Dog):
 def fly(self):
 print("----飞-----")
 
xiaotq = Xiaotq()
xiaotq.fly()
xiaotq.bark()
xiaotq.eat()

2.重写

子类和父类中拥有方法名相同的方法,说明子类重写了父类的方法

重写的作用:父类中已经有了这个方法,但子类想修改里面的内容,直接修改父类是不好的,就需要用到重写

例如:

class Animal:
 def eat(self):
 print("---吃-----")
 def drink(self):
 print("----喝-----")
 def sleep(self):
 print("----睡觉-----")
class Dog(Animal):
 def bark(self):
 print("---汪汪叫----")
 
class Xiaotq(Dog):
 def fly(self):
 print("----飞-----")
 def bark(self):
 print("----狂叫-----")
 
xiaotq = Xiaotq()
xiaotq.fly()
xiaotq.bark()
xiaotq.eat()

这样做,父类的方法是不会被调用的,需要用以下方式:

class Animal:
 def eat(self):
 print("---吃-----")
 def drink(self):
 print("----喝-----")
 def sleep(self):
 print("----睡觉-----")
class Dog(Animal):
 def bark(self):
 print("---汪汪叫----")
 
class Xiaotq(Dog):
 def fly(self):
 print("----飞-----")
 def bark(self):
 print("----狂叫-----")
 #调用被重写的父类的方法
 #1 必须加上self
 Dog.bark(self)
 #2
 super().bark()
 
xiaotq = Xiaotq()
xiaotq.fly()
xiaotq.bark()
xiaotq.eat()

以上这篇对python中类的继承与方法重写介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python对象的深拷贝和浅拷贝详解
Aug 25 Python
Python随机数用法实例详解【基于random模块】
Apr 18 Python
Python实现霍夫圆和椭圆变换代码详解
Jan 12 Python
linux安装Python3.4.2的操作方法
Sep 28 Python
详解Django+uwsgi+Nginx上线最佳实战
Mar 14 Python
Python创建或生成列表的操作方法
Jun 19 Python
Python OpenCV 使用滑动条来调整函数参数的方法
Jul 08 Python
python实现超市商品销售管理系统
Oct 25 Python
布隆过滤器的概述及Python实现方法
Dec 08 Python
Anaconda和ipython环境适配的实现
Apr 22 Python
浅谈tensorflow模型保存为pb的各种姿势
May 25 Python
Python中三种花式打印的示例详解
Mar 19 Python
python 格式化输出百分号的方法
Jan 20 #Python
python自定义函数实现一个数的三次方计算方法
Jan 20 #Python
对python:循环定义多个变量的实例详解
Jan 20 #Python
python 动态生成变量名以及动态获取变量的变量名方法
Jan 20 #Python
浅谈Python 列表字典赋值的陷阱
Jan 20 #Python
对python中词典的values值的修改或新增KEY详解
Jan 20 #Python
解决python字典对值(值为列表)赋值出现重复的问题
Jan 20 #Python
You might like
PHP文件上传原理简单分析
2011/05/29 PHP
PHP面向对象学习笔记之二 生成对象的设计模式
2012/10/06 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
php出现内存位置访问无效错误问题解决方法
2014/08/16 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
2016/07/15 PHP
PHP中TP5 上传文件的实例详解
2017/07/31 PHP
jQuery弹出层插件简化版代码下载
2008/10/16 Javascript
JavaScript DOM 添加事件
2009/02/14 Javascript
JS getStyle获取最终样式函数代码
2010/04/01 Javascript
extjs中grid中嵌入动态combobox的应用
2011/01/01 Javascript
JavaScript利用正则表达式去除日期中的“-”
2014/07/01 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
2014/07/18 Javascript
javascript中定义类的方法详解
2015/02/10 Javascript
JQuery使用$.ajax和checkbox实现下次不在通知功能
2015/04/16 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
必备的JS调试技巧汇总
2016/07/20 Javascript
Bootstrap Table服务器分页与在线编辑应用总结
2016/08/08 Javascript
JSON与JS对象的区别与对比
2017/03/01 Javascript
详解Vue.js分发之作用域槽
2017/06/13 Javascript
Vue组件中prop属性使用说明实例代码详解
2018/05/31 Javascript
Vue从TodoList中学父子组件通信
2019/02/05 Javascript
Vue自定义属性实例分析
2019/02/23 Javascript
jquery将json转为数据字典的实例代码
2019/10/11 jQuery
javascript局部自定义鼠标右键菜单
2020/12/08 Javascript
[00:36]DOTA2勇士令状莱恩声望物品——冥晶之厄展示
2018/05/25 DOTA
Python 爬虫的工具列表大全
2016/01/31 Python
浅谈python 里面的单下划线与双下划线的区别
2017/12/01 Python
django框架ModelForm组件用法详解
2019/12/11 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
传播学专业毕业生自荐信
2013/11/04 职场文书
平面设计师的工作职责
2013/11/21 职场文书
大学生党课思想汇报
2013/12/29 职场文书
会计学自荐信
2014/06/03 职场文书
工程负责人任命书
2014/06/06 职场文书
食品科学与工程专业毕业生求职信范文
2014/07/21 职场文书
结婚仪式主持词
2015/06/29 职场文书