Bonjour
Dans une classe dérivée, je souhaite "surcharger" une propriété de la classe parente.
Pour définir la propriété dans la classe dérivée, j'ai besoin d'accéder à la propriété de la classe parente (mon cas réel est moins simpliste que l'exemple ci-dessous !).
Je n'y suis arrivé qu'en utilisant la fonction property car là, pour le coup, j'appelle une méthode tout bête de la classe mère :
Est-ce possible de faire quelque chose d'équivalent si, dans la classe parente, la propriété a été définie via le décorateur @property ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 class Mere(object): def __init__(self,compA,compB): self._compA = compA self._compB = compB def get_somme(self): return self._compA + self._compB somme = property(get_somme) class Fille(Mere): def __init__(self,compA,compB,compC): Mere.__init__(self,compA,compB) self._compC = compC def get_somme_ou_autre_nom(self): return Mere.get_somme(self) + self._compC somme = property(get_somme_ou_autre_nom)
J'ai essayé différentes syntaxes pour utiliser la propriété de la classe parente mais sans succès ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 class Mere(object): def __init__(self,compA,compB): self._compA = compA self._compB = compB @property def somme(self): return self._compA + self._compB class Fille(Mere): def __init__(self,compA,compB,compC): Mere.__init__(self,compA,compB) self._compC = compC @property def somme(self): return ????? + self._compC
Partager