Héritage orienté objet (2) Python (3)

super () appelle la classe parent

La section précédente a présenté une méthode complexe pour appeler la classe parente. Nous allons maintenant introduire une méthode simple pour appeler la classe parente. Nous allons changer le code précédent en héritage multicouche, et chaque classe n'hérite que d'une seule classe parente.

class Gun(object):
	def __init__(self):
		self.length = 100
		
	def shoot(self):
		print('bang1')
		
class Wuzi(Gun):
	def shoot(self):
		# 注意这里要先初始化自己,这样可以避免调用父类方法后再调用自己的方法时,还是父类的方法输出
		super().__init__()
		super().shoot()
		
	
class XiaoWuzi(Wuzi):
	def shoot(self):
		super().__init__()
		super().shoot()

wuzi = XiaoWuzi()

wuzi.shoot()

À ce stade, la sortie est bang1, on peut voir que la routine de la méthode super () est également initialisée en premier, et python suivra l'ordre __mro__ pour trouver la classe parente pour hériter de la méthode correspondante

Je suppose que tu aimes

Origine blog.csdn.net/weixin_48445640/article/details/108814887
conseillé
Classement