首页 > 编程 > Python > 正文

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

2019-11-25 13:26:25
字体:
来源:转载
供稿:网友

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中类的继承与方法重写介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表