[ALG2} instanceof

Voir le sujet précédent Voir le sujet suivant Aller en bas

[ALG2} instanceof

Message  Invité le Dim 12 Oct 2014, 21:50

Bonjour,

J'aimerais rendre un override d'equals abstrait mais pour ce fait il faudrait pouvoir faire le test d'instanceof en utilisant getClass().

Ceci semble impossible. Je n'ai pas trouvé de solution viable (déclarer une variable qui reçoit le résultat de getClass et utiliser cette variable pour le test d'instanceof n'est par exemple pas possible), est ce parce que c'est tout simplement impossible et que je suis donc obligée d'implémenter equals dans chacune des classes filles?

Sur le net c'est très difficile de trouver des pistes car la majeur partie des sujets ne tendent qu'à comparer instanceof et getClass()... ce qui est sans doute une piste en soit qui montrerait que ce que je cherche à faire n'a pas de sens. Quelqu'un pourrait il m'éclairer?

D'avance merci,

Johanna

Invité
Invité


Revenir en haut Aller en bas

Re: [ALG2} instanceof

Message  pbt le Lun 13 Oct 2014, 09:16

Ta question n'est pas très claire … la clarifier t'apporterait probablement des éléments de réponses.

Si ta question est: peux-on (re)définir une méthode equals dans une classe abstraite ? La réponse est oui.

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [ALG2} instanceof

Message  Invité le Lun 13 Oct 2014, 11:07

Non la question porte plutôt sur comment le faire: sachant que j'ai deux classes filles pour ma classe abstraite et sachant que dans ma méthode equals il y a un test d'instanceof, if faut que dans instanceof quelque chose, "quelque chose" soit définit en fonction du type d'objet dans lequel je suis (fille de type 1 ou fille de type 2).

Pour donc pouvoir implémenter ma méthode equals dans ma classe mère abstraite,  j'aurais aimé faire un getClass() sur l'objet courant puis tester si l'objet passé en paramètre d'equals est une instanceof de la classe informée par mon getClass().
Cela ne fonctionne toute fois pas, en tout cas avec les essais que j'ai fait...


Après il est tout à fait possible (voir probable) que ce que je souhaite faire est à côté de la plaque pour une raison ou pour une autre... Neutral  mais alors l'explication me sera aussi utile.

Invité
Invité


Revenir en haut Aller en bas

Re: [ALG2} instanceof

Message  pbt le Lun 13 Oct 2014, 11:18

Soit tu écris un equals dans ta classe abstraite qui convient pour toutes les classes enfants (qui ne désirent pas le réécrire). Dans ce cas tu ne t'occupes pas des propriétés des enfants. Tu ne peux pas écrire dans la classe abstraite parent: « si je suis tel enfant alors »

Soit tu veux différencier les méthodes equals en fonction des propriétés des enfants … dans ce cas tu écris les méthodes equals pour chaque enfant.

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [ALG2} instanceof

Message  Invité le Lun 13 Oct 2014, 11:21

Hum... ok dans ce cas je reste avec mes deux equals implémenter dans les filles, merci. Wink

Invité
Invité


Revenir en haut Aller en bas

Re: [ALG2} instanceof

Message  Contenu sponsorisé Aujourd'hui à 20:45


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum