Classes python
Résolu
dotten
Messages postés
17
Statut
Membre
-
grom971 -
grom971 -
Bonjour,
Sous python peut on avoir une classe B qui soit dans une autre classe A?
si oui, comment peut on utiliser les variables statiques de la classe A dans B et inversement?
Merci.
Sous python peut on avoir une classe B qui soit dans une autre classe A?
si oui, comment peut on utiliser les variables statiques de la classe A dans B et inversement?
Merci.
2 réponses
Sous python peut on avoir une classe B qui soit dans une autre classe A?
oui.
Par composition ou héritage, comme tu veux.
si oui, comment peut on utiliser les variables statiques de la classe A dans B et inversement?
Généralement, il vaut mieux éviter les variables de classe ("statiques"). Mais bon si vraiment tu le veux:
Exemple: Une classe B accède à une variable de classe par composition:
ce qui affiche: 5
Et par héritage:
oui.
Par composition ou héritage, comme tu veux.
si oui, comment peut on utiliser les variables statiques de la classe A dans B et inversement?
Généralement, il vaut mieux éviter les variables de classe ("statiques"). Mais bon si vraiment tu le veux:
Exemple: Une classe B accède à une variable de classe par composition:
class A:
varClasseA = 5 # C'est une variable de classe.
class B:
def __init__(self):
pass
def coucou(self):
print A.varClasseA
b = B()
b.coucou()
ce qui affiche: 5
Et par héritage:
class A:
varClasseA = 5 # C'est une variable de classe.
class B(A):
def __init__(self):
pass
def coucou(self):
print self.__class__.varClasseA
b = B()
b.coucou()
dotten
Messages postés
17
Statut
Membre
3
Merci, ça m'a beaucoup aidé.
grom971
Enfin un exemple clair, merci !