对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跳出循环语句continue与break的区别
Aug 25 Python
Python3.x中自定义比较函数
Apr 24 Python
python回调函数用法实例分析
May 09 Python
12步教你理解Python装饰器
Feb 25 Python
详解python3中tkinter知识点
Jun 21 Python
python实现点对点聊天程序
Jul 28 Python
Python unittest 简单实现参数化的方法
Nov 30 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 Python
python使用sessions模拟登录淘宝的方式
Aug 16 Python
浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别
Jun 12 Python
Python系统公网私网流量监控实现流程
Nov 23 Python
Python循环之while无限迭代
Apr 30 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 flush类输出缓冲剖析
2008/10/19 PHP
Array of country list in PHP with Zend Framework
2011/10/17 PHP
php 访问oracle 存储过程实例详解
2017/01/08 PHP
javascript延时重复执行函数 lLoopRun.js
2007/06/29 Javascript
表单类各种类型(文本框)失去焦点效果jquery代码
2013/04/26 Javascript
javascript制作的滑动图片菜单
2015/05/15 Javascript
IE10中flexigrid无法显示数据的解决方法
2015/07/26 Javascript
深入理解JavaScript中Ajax
2016/08/02 Javascript
微信小程序实战之轮播图(3)
2017/04/17 Javascript
JavaScript之Date_动力节点Java学院整理
2017/06/28 Javascript
超级简易的JS计算器实例讲解(实现加减乘除)
2017/08/08 Javascript
[js高手之路]寄生组合式继承的优势详解
2017/08/28 Javascript
vue 使用eventBus实现同级组件的通讯
2018/03/02 Javascript
Javascript中弹窗confirm与prompt的区别
2018/10/26 Javascript
原生JS与CSS实现软件卸载对话框功能
2019/12/05 Javascript
原生javascript中this几种常见用法总结
2020/02/24 Javascript
解决vuex改变了state的值,但是页面没有更新的问题
2020/11/12 Javascript
js实现简易点击切换显示或隐藏
2020/11/29 Javascript
Python 使用PIL中的resize进行缩放的实例讲解
2018/08/03 Python
对pandas的行列名更改与数据选择详解
2018/11/12 Python
python实现归并排序算法
2018/11/22 Python
10 分钟快速入门 Python3的教程
2019/01/29 Python
详解Python数据分析--Pandas知识点
2019/03/23 Python
OpenCV图像颜色反转算法详解
2019/05/13 Python
为什么python比较流行
2020/06/19 Python
如何在Win10系统使用Python3连接Hive
2020/10/15 Python
python boto和boto3操作bucket的示例
2020/10/30 Python
Nº21官方在线商店:numeroventuno.com
2019/09/26 全球购物
高中毕业生自我鉴定
2013/11/03 职场文书
关于元旦的广播稿
2014/02/16 职场文书
初中家长寄语
2014/04/02 职场文书
领导班子个人对照检查剖析材料
2014/09/29 职场文书
民警群众路线教育实践活动对照检查材料
2014/10/04 职场文书
大国崛起英国观后感
2015/06/02 职场文书
爱护环境建议书
2015/09/14 职场文书
《用字母表示数》教学反思
2016/02/17 职场文书