Héritage d'une classe abstraite [Résolu]

Signaler
Messages postés
348
Date d'inscription
mardi 6 avril 2004
Statut
Membre
Dernière intervention
6 novembre 2008
-
Messages postés
237
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
11 juillet 2006
-
bonjour,

dans cet exemple :

abstract class Mere {
private int param1;
protected int param2;

Mere() {
...
}

private methode1() {
...
}

protected methode2() {
...
}
}

class Fille extends Mere {
...
}

1) "Fille" herite t'elle de param1, de param2, du constructeur de "Mere", de methode1, de methode2 ?
2) si je ne specifie rien (ni public, ni private, ni protected) quels sont mais droits d'acces par defaut ?

merci a vous,

alonsyl

5 réponses

Messages postés
237
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
11 juillet 2006

En effet si tu as une methode en protected dans ta super classe, tu peux tres bien la redefinir dans les classes derivees et la passer en public. Elle devra cependant garder la meme entete.

cid019
Messages postés
2113
Date d'inscription
samedi 8 novembre 2003
Statut
Contributeur
Dernière intervention
6 octobre 2012
11
le plus simple etant de toujours specifier private protected ou public

pour la question 1 oui la fille en herite (evidement) mais il ne sont pas directement accessible (en generale on utilise des Get Set public )

GL
++

GodConan
Messages postés
348
Date d'inscription
mardi 6 avril 2004
Statut
Membre
Dernière intervention
6 novembre 2008
11
salut GodConan,

depuis hier soir, je pense avoir compris qu'une classe dérivée n'hérite pas des membres "private".
=> je ne pense pas que Fille hérite de parma1 et methode1.

par contre je me demande ce qu'il en est du constructeur de Mere et des membres declares en "protected".

merci a toi,

alonsyl
Messages postés
237
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
11 juillet 2006

Les objets declares en 'protected' dans une classe mere sont accessibles pas une classe dérivée de celle-ci.

Si c'est déclarée en public ils sont accessibles par tous et en privé uniquement pas la classe détenant ces objets.

Voila....

cid019
Messages postés
348
Date d'inscription
mardi 6 avril 2004
Statut
Membre
Dernière intervention
6 novembre 2008
11
si "Fille" herite d'un membre "protected" dans "Mere" ce membre est t'il egalement "protected" pour elle ?
si oui, existe t'il un moyen de redifinir la portee d'un variable ou d'une methode lors de l'heritage (transformer un "protected" en "public" lors de l'heritage par exemple) ?

merci a vous,

alonsyl