|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : février 2007 Messages : 11 ![]() |
Salutations !
Je m'en viens vers vous car je ne trouve pas de solution à mon petit souci. J'ai du mal comprendre un aspect de la notion d'héritage en objet et je me heurte à un petit mur que j'espère vous m'aiderez à franchir. Voici le type de souci que j'ai : Code :
Où se situe mon erreur ? Merci d'avance pour votre aide. Edit : Je viens de trouver une solution à mon souci à l'instant. Mais est-ce la bonne méthode ? Merci. Code :
|
||||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
mais t'as testé ton code ???
parce que il est complétement faux.
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : février 2007 Messages : 11 ![]() |
Afin de simplifier la demande, voici un code complet qui fonctionne et qui illustre mieux ma question :
Code :
|
||
|
|
00
|
|
|
#4 | ||
|
Invité de passage
![]() Inscription : février 2007 Messages : 11 ![]() |
Code :
En passant les function bonjour de private à protected cela fonctionne parfaitement. J'ai vraiment des soucis pour savoir quand utiliser protected à la place de private parfois j'avoue... edit : @Stealth35 désolé si mon premier message était peu clair, je n'avais pas indiqué le code en entier, mais juste sa structure pour indiquer les liaisons qui me posaient souci, je pensais que ce serait suffisant. |
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : décembre 2010 Messages : 9 ![]() |
Salutation
La visibilité protected (pour les méthodes aussi bien que les attributs) s'utilise dès lors qu'il y a de l'héritage et que l'on souhaite que les méthodes dites "protégée" soit visible dans les classes filles. La visibilité private ne rend visible un attribut/méthodes qu'à la classe où l'élément est déclaré Et voilà |
|
|
00
|
|
|
#6 | ||
|
Expert Confirmé
![]() ![]() |
Bonjour,
Je vais compléter la réponse de Cocoww : tu peux aussi accéder aux membres privés d'une classe de l'extérieur à la seule condition qu'une classe (A) au sein d'une classe (B) soit de même nature que la classe contenante (A <=> B). Bref un exemple vaut mieux qu'un long discours : Code :
|
||
|
10
|
|
|
#7 | |||
|
Invité de passage
![]() Inscription : décembre 2010 Messages : 9 ![]() |
Citation:
En revanche pardonne moi mais, ... je ne vois pas l'intérêt [direct] d'une telle implémentation! Tu peux en dire plus silteplé ? |
|||
|
|
00
|
|
|
#8 |
|
Expert Confirmé
![]() ![]() |
Bonjour
C'est clair que cela n'est pas très utile à première vue mais c'est pratique dans le cas où tu dois gérer par exemple une arborescence à l'aveugle (sans distinguer les noeuds des feuilles). Tu pars du principe que tout est de même nature et que les éléments s'imbriquent les uns dans les autres. Dans ce cas, lors de certains taitements il est bien plus propre (voire pratique) d'accéder directement à un attribut privé d'un élement en cours de rattachement que de passer par des mutateurs qui peuvent avoir des signatures très verbeuses juste pour modifier un attribut (vécu). Mais je te rassure tu peux t'en passer. |
|
00
|
Copyright © 2000-2012 - www.developpez.com