对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 相关文章推荐
天翼开放平台免费短信验证码接口使用实例
Dec 18 Python
python编写的最短路径算法
Mar 25 Python
总结网络IO模型与select模型的Python实例讲解
Jun 27 Python
centos6.7安装python2.7.11的具体方法
Jan 16 Python
python实现多线程网页下载器
Apr 15 Python
Python中文件的读取和写入操作
Apr 27 Python
Python中最大递归深度值的探讨
Mar 05 Python
使用Pandas对数据进行筛选和排序的实现
Jul 29 Python
python conda操作方法
Sep 11 Python
Python 利用OpenCV给照片换底色的示例代码
Aug 03 Python
Python入门之使用pandas分析excel数据
May 12 Python
图文详解matlab原始处理图像几何变换
Jul 09 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使用Cookie实现和用户会话的方法
2015/01/21 PHP
基于PHP实现等比压缩图片大小
2016/03/04 PHP
ThinkPHP中order()使用方法详解
2016/04/19 PHP
PHPTree――php快速生成无限级分类
2018/03/30 PHP
Javascript 读书笔记索引贴
2010/01/11 Javascript
浅析JQuery UI Dialog的样式设置问题
2013/12/18 Javascript
jqGrid读取选择的多行的某个属性代码
2014/05/18 Javascript
JS Array.slice 截取数组的实现方法
2016/01/02 Javascript
jquery ajax分页插件的简单实现
2016/01/27 Javascript
详解jQuery中的deferred对象的使用(一)
2016/05/27 Javascript
js中 计算两个日期间的工作日的简单实例
2016/08/08 Javascript
es6学习笔记之Async函数的使用示例
2017/05/11 Javascript
vue2.0中goods选购栏滚动算法的实现代码
2017/05/17 Javascript
js实现图片放大展示效果
2017/08/30 Javascript
JS实现的ajax和同源策略(实例讲解)
2017/12/01 Javascript
swiper移动端轮播插件(触碰图片之后停止轮播)
2017/12/28 Javascript
jQuery实现获取选中复选框的值实例详解
2018/06/28 jQuery
vue组件间通信六种方式(总结篇)
2019/05/15 Javascript
javascript实现前端input密码输入强度验证
2020/06/24 Javascript
vue 使用localstorage实现面包屑的操作
2020/11/16 Javascript
[08:04]TI4西雅图DOTA2前线报道 海涛探访各路人马
2014/07/09 DOTA
[01:51]历届DOTA2国际邀请赛举办地回顾 TI9落地上海
2018/08/26 DOTA
用Python中的wxPython实现最基本的浏览器功能
2015/04/14 Python
Python多进程机制实例详解
2015/07/02 Python
Python中装饰器学习总结
2018/02/10 Python
pytorch 可视化feature map的示例代码
2019/08/20 Python
Python逐行读取文件内容的方法总结
2020/02/14 Python
opencv 图像礼帽和图像黑帽的实现
2020/07/07 Python
详解CSS3中字体平滑处理和抗锯齿渲染
2017/03/29 HTML / CSS
全球烹饪课程的领先预订平台:Cookly
2020/01/28 全球购物
北京一家公司的.net开发工程师笔试题
2012/04/17 面试题
师范教师毕业鉴定
2014/01/13 职场文书
素食餐饮项目创业计划书
2014/02/02 职场文书
检举信的格式及范文
2014/04/04 职场文书
学生操行评语大全
2014/04/24 职场文书
甲午风云观后感
2015/06/02 职场文书