Python中类的继承怎么实现

蜗牛 互联网技术资讯 2022-06-24 6 0

本篇内容主要讲解“Python中类的继承怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中类的继承怎么实现”吧!

1. 单继承

继承的主要作用是实现代码的重用。继承使得子类拥有父类的方法和属性。
直接来看一个例子吧。

class animal:
	def eat(self):
		print("吃")
		
	def drink(self):
		print("喝")
	
class dog(animal):
	def dark(self):
		print("汪汪叫")
	

goudan = dog()
goudan.eat()
goudan.drink()

从上面的代码可以看出,在编写dog类的时候,我们并没有重写eat和drink两个方法。我们只需要在dog后面的括号中加上父类的名字即可。当子类继承了父类,子类就可以直接使用父类中的方法了。在本例中,goudan可以直接使用animal类中的eat和drink两个方法。
而且一个神奇的事情是,继承是具有传递性的。子类拥有父类的方法和属性,同时也具有父类的父类所具有的属性。

2. 继承中的方法重写

有时候,父类中的方法并不能完成满足子类的需求。这时候我们就需要方法重写了。子类方法重写一般有两种情况:

  1. 覆盖父类的方法

  2. 对父类的方法进行扩展

一种简单的方法是直接重写相应的方法。下面这个例子就是重写了drink这个方法。当使用goudan调用drink这个方法方法时,结果并不是喝而是拿舌头喝水。

class animal:
	def eat(self):
		print("吃")
		
	def drink(self):
		print("喝")
	
class dog(animal):
	def drink(self):
		print("拿舌头喝水")
		
	def dark(self):
		print("汪汪叫")
	

goudan = dog()
goudan.eat()
goudan.drink()

当我们的需求不是简单的覆盖父类中的方法,而是在父类方法的基础上对方法进行扩展。具体的做法是:

  1. 在需要的位置使用super().父类方法 来调用父类方法的执行

  2. 代码的其他位置针对子类的需求,编写子类持有的代码实现

我们来看一个例子,此时goudan在调用drink方法的时候,会输出喝和拿舌头喝水两个输出。

class animal:
	def eat(self):
		print("吃")
		
	def drink(self):
		print("喝")
	
class dog(animal):
	def drink(self):
		# 1. 根据子类的需求编写特定的代码
		print("拿舌头喝水")
		# 2. 使用super继承父类中的fangfa
		super().drink
		
	def dark(self):
		print("汪汪叫")
	

goudan = dog()
goudan.eat()
goudan.drink()

3. 多继承

对于Python而言,一个子类可以有多个父类。多继承的基本语法是比较简单的。话不多说,直接看一个例子

class A():
	def test(self):
		print("test")
		
class B():
	def demo(self):
		print("demo")

class C(A,B):
	pass

c = C()
c.test()
c.demo()

到此,相信大家对“Python中类的继承怎么实现”有了更深的了解,不妨来实际操作一番吧!这里是蜗牛博客网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论