对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程序设计入门(3)数组的使用
Jun 16 Python
CentOS 7下安装Python 3.5并与Python2.7兼容并存详解
Jul 07 Python
Python3实现的字典、列表和json对象互转功能示例
May 22 Python
Python爬虫实现(伪)球迷速成
Jun 10 Python
numpy中的ndarray方法和属性详解
May 27 Python
详解PyTorch中Tensor的高阶操作
Aug 18 Python
python文件读写代码实例
Oct 21 Python
Python集合基本概念与相关操作实例分析
Oct 30 Python
Python自定义聚合函数merge与transform区别详解
May 26 Python
Python gevent协程切换实现详解
Sep 14 Python
Python基础知识学习之类的继承
May 31 Python
Python使用OpenCV实现虚拟缩放效果
Feb 28 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实现图片等比例放大和缩小的方法详解
2013/06/06 PHP
PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例
2015/05/11 PHP
wampserver改变默认网站目录的办法
2015/08/05 PHP
JavaScript语句可以不以;结尾的烦恼
2007/03/08 Javascript
javascript最常用与实用的创建类的代码
2010/08/12 Javascript
IE无法设置短域名下Cookie
2010/09/23 Javascript
jquery $.each()使用探讨
2013/09/23 Javascript
使用JavaScript制作一个简单的计数器的方法
2015/07/07 Javascript
微信小程序wx.previewImage预览图片实例详解
2017/12/07 Javascript
vue中添加mp3音频文件的方法
2018/03/02 Javascript
vue计算属性和监听器实例解析
2018/05/10 Javascript
Angular使用Restful的增删改
2018/12/28 Javascript
layer弹出层扩展主题的方法
2019/09/11 Javascript
Node.js开发之套接字(socket)编程入门示例
2019/11/05 Javascript
angular8和ngrx8结合使用的步骤介绍
2019/12/01 Javascript
在vue中封装的弹窗组件使用队列模式实现方法
2020/07/23 Javascript
跟老齐学Python之玩转字符串(2)更新篇
2014/09/28 Python
python模块之time模块(实例讲解)
2017/09/13 Python
利用Python如何生成便签图片详解
2018/07/09 Python
python通过txt文件批量安装依赖包的实现步骤
2019/08/13 Python
在python shell中运行python文件的实现
2019/12/21 Python
Python描述数据结构学习之哈夫曼树篇
2020/09/07 Python
详解Python中的编码问题(encoding与decode、str与bytes)
2020/09/30 Python
python 实现朴素贝叶斯算法的示例
2020/09/30 Python
斐乐美国官方网站:FILA美国
2019/03/01 全球购物
俄罗斯品牌服装和鞋子的在线商店:KUPIVIP
2019/10/27 全球购物
C面试题
2015/10/08 面试题
字符串str除首尾字符外的其他字符按升序排列
2013/03/08 面试题
音乐专业应届生教师求职信
2013/11/04 职场文书
创业计划书的主要内容有哪些
2014/01/29 职场文书
马云北大演讲完整版:真心话,什么才是阿里的核心竞争力?
2014/04/04 职场文书
司机工作自我鉴定
2014/09/19 职场文书
2014年销售内勤工作总结
2014/12/01 职场文书
高老头读书笔记
2015/06/30 职场文书
在 HTML 页面中使用 React的场景分析
2022/01/18 Javascript
详解Golang如何实现支持随机删除元素的堆
2022/09/23 Python