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

 更新时间:2019年01月20日 16:04:10   作者:墨墨陌陌沫沫0  
今天小编就为大家分享一篇对python中类的继承与方法重写介绍,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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 递归函数详解及实例

    这篇文章主要介绍了Python 递归函数详解及实例的相关资料,需要的朋友可以参考下
    2016-12-12
  • python提取包含关键字的整行数据方法

    python提取包含关键字的整行数据方法

    今天小编就为大家分享一篇python提取包含关键字的整行数据方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 妙用itchat! python实现久坐提醒功能

    妙用itchat! python实现久坐提醒功能

    python编写的久坐提醒,给最爱的那个她,这篇文章主要为大家分享了python久坐提醒功能的实现代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • python实现梯度下降算法的实例详解

    python实现梯度下降算法的实例详解

    在本篇文章里小编给大家整理的是一篇关于python实现梯度下降算法的实例详解内容,需要的朋友们可以参考下。
    2020-08-08
  • PyCharm中如何直接使用Anaconda已安装的库

    PyCharm中如何直接使用Anaconda已安装的库

    这篇文章主要介绍了PyCharm中如何直接使用Anaconda已安装的库,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • Python面向对象之类和对象实例详解

    Python面向对象之类和对象实例详解

    这篇文章主要介绍了Python面向对象之类和对象,结合实例形式详细分析了Python面向对象相关的继承、多态、类及对象等概念、原理、操作技巧与注意事项,需要的朋友可以参考下
    2018-12-12
  • Django 自定义权限管理系统详解(通过中间件认证)

    Django 自定义权限管理系统详解(通过中间件认证)

    这篇文章主要介绍了Django 自定义权限管理系统详解(通过中间件认证),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Python中tqdm的使用和例子

    Python中tqdm的使用和例子

    Tqdm是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器tqdm(iterator),下面这篇文章主要给大家介绍了关于Python中tqdm的使用和例子的相关资料,需要的朋友可以参考下
    2022-09-09
  • python中f-string的基本用法

    python中f-string的基本用法

    f-string是Python3.6及以上版本中新增的一种格式化字符串方式,本文就来介绍了python中f-string的基本用法,具有一定的参考价值,感兴趣的可以了解一下
    2024-12-12
  • Python绘制简单散点图的方法

    Python绘制简单散点图的方法

    这篇文章主要为大家详细介绍了Python绘制简单散点图的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04

最新评论