j'ai une classe "A" et il y a 2 méthodes "X" et "Y" et ensuite je fais une autre classe "B" qui hérite de la classe "A"

Maintenant, je veux remplacer la fonction "Y" mais je suis vonfused s'il est nécessaire d'appeler à nouveau le constructeur dans la classe "B" ou directement je peux remplacer la méthode

0
Raghav 3 nov. 2019 à 18:49

1 réponse

Vous pouvez remplacer la méthode.

Pour une raison quelconque, si vous devez également appeler la méthode de la superclasse, vous pouvez utiliser super:

class B(A):
    def Y(self):
        from_A = super().Y()  # this calls `A.Y()`
        # Do stuffs

Pendant que nous y sommes, si vous remplacez l'initialiseur (__init__), la même règle s'applique - vous pouvez avoir B a son propre ensemble de règles, et si vous souhaitez également tirer parti de {{ __init__ de X2}} utilise super comme je l'ai montré. La même règle s'applique également aux autres méthodes.

1
heemayl 3 nov. 2019 à 15:54