对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之关于类的初步认识
Oct 11 Python
举例讲解Python中的Null模式与桥接模式编程
Feb 02 Python
搭建Python的Django框架环境并建立和运行第一个App的教程
Jul 02 Python
Python获取Redis所有Key以及内容的方法
Feb 19 Python
详解js文件通过python访问数据库方法
Mar 03 Python
Python代码实现删除一个list里面重复元素的方法
Apr 02 Python
用pyqt5 给按钮设置图标和css样式的方法
Jun 24 Python
详解Django-channels 实现WebSocket实例
Aug 22 Python
Java ExcutorService优雅关闭方式解析
May 30 Python
python字符串的index和find的区别详解
Jun 20 Python
python实现逻辑回归的示例
Oct 09 Python
Pycharm常用快捷键总结及配置方法
Nov 14 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
站长助手-网站web在线管理程序 v1.0 下载
2007/05/12 PHP
php中用加号与用array_merge合并数组的区别深入分析
2013/06/03 PHP
解析dedeCMS验证码的实现代码
2013/06/07 PHP
php小经验:解析preg_match与preg_match_all 函数
2013/06/29 PHP
php 模拟post_验证页面的返回状态(实例讲解)
2013/10/28 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
2016/05/22 PHP
Yii2下session跨域名共存的解决方案
2017/02/04 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
农历与西历对照
2006/09/06 Javascript
jquery中获取元素的几种方式小结
2011/07/05 Javascript
innerText和textContent对比及使用介绍
2013/02/27 Javascript
Javascript数组Array基础介绍
2016/03/13 Javascript
js动态生成form 并用ajax方式提交的实现方法
2016/09/09 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
2017/11/08 jQuery
ng-alain的sf如何自定义部件的流程
2020/06/12 Javascript
解决vue+webpack项目接口跨域出现的问题
2020/08/10 Javascript
[03:28]2014DOTA2国际邀请赛 走近EG战队天才中单Arteezy
2014/07/12 DOTA
在SAE上部署Python的Django框架的一些问题汇总
2015/05/30 Python
django主动抛出403异常的方法详解
2019/01/04 Python
使用WingPro 7 设置Python路径的方法
2019/07/24 Python
python多继承(钻石继承)问题和解决方法简单示例
2019/10/21 Python
TensorFlow:将ckpt文件固化成pb文件教程
2020/02/11 Python
用css3实现当鼠标移进去时当前亮其他变灰效果
2014/04/08 HTML / CSS
使用CSS3的font-face字体嵌入样式的方法讲解
2016/05/13 HTML / CSS
Spartoo英国:欧洲最大的网上鞋店
2016/09/13 全球购物
北美最大的手工艺品零售商之一:Michaels Stores
2019/02/27 全球购物
远程学习的教学用品和家庭学习资源:Really Good Stuff
2020/04/27 全球购物
业务经理的岗位职责
2013/11/16 职场文书
法学研究生自我鉴定范文
2013/12/04 职场文书
爱护花草树木的标语
2014/06/11 职场文书
村主任“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
2015员工年度考核评语
2015/03/25 职场文书
2015年公务员工作总结
2015/04/24 职场文书
2019求职信大礼包
2019/05/15 职场文书
NoSQL优缺点与MongoDB数据库简介
2022/06/05 MongoDB
VUE递归树形实现多级列表
2022/07/15 Vue.js