Probleme de classe

gaga38 Messages postés 46 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 27 août 2009 - 4 mars 2005 à 22:23
gaga38 Messages postés 46 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 27 août 2009 - 7 mars 2005 à 17:59
Salut a tous,

Voila j ai un petit souci de JAVA, mais ca vous l aviez deja deviner!!!
bon voila mon souci, je dois faire une sorte de mini banque avec 3 classes de comptes differents qui n ont pas de lien entre elle, sauf le fait qu elle heritent toutes les 3 de la classe Account.

Le probleme, c'est que dans mon systeme, je gere les comptes en les stockant dans une variable de nom "accounts" et qui est de type "Vector". Et quand je veux recuperer les informations ou les method du compte concerné, là, le compilateur m envoie sur les roses, car quand on fait "accounts.lastElement()" ca retourne un type Object et donc ma question, c'est comment je peu faire pour recuperer le type de ce fameux objet????
J ai deja fait ca, mais ca a pas l'air de marcher :

if(accounts.size()!=0)
{
lastAccount=accounts.lastElement();
classObject=lastAccount.getClass();
numAccount=lastAccount.accountNumber;
accountNumber=numAccount+1;
}

lastAccount est de type Object
classObject est de type Class
numAccount et accountNumber sont de type int
accountNumber est un attribut de la classe Account

je sais pas comment retrouver la classe originelle de lastAccount, j ai essayer:
((classObject) lastAccount) afin de convertir le type Object en type qui est cense etre contenu dans classObject.
mais ca lui plait pas non plus voila je sais plus comment faire alors je me tourne vers vous
alors merci d avance de toute l aide que vous pourrez m apporter

Gaga38

3 réponses

kaloway Messages postés 358 Date d'inscription jeudi 24 octobre 2002 Statut Membre Dernière intervention 13 avril 2020
5 mars 2005 à 06:13
Si c'est 3 instances de la même classe tu caste le résultat avec le type de la classe.



(classe)accounts.lastElement();



Si c'est 3 instances de 3 classes diffèrentes il faut déterminer le
type de classe de l'élèment entrer dans le vecteur avec instanceof et
puis faire une caste sur l'élèment.
0
gaga38 Messages postés 46 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 27 août 2009
5 mars 2005 à 11:52
Salut Kaloway,



ben vu que ca peut etre une instance d une des 3 classes, je vais tenter ta deuxieme solution et je te tiens au courant!



Merci du coup de main



gaga38
0
gaga38 Messages postés 46 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 27 août 2009
7 mars 2005 à 17:59
bon ben merci kaloway et ton idee marche a merveille, j y suis arrivee

Pour information, j ai fait :



lastAccount=accounts.lastElement();

classObject=lastAccount.getClass().getName();



et je compare avec la magie des "if" les noms des classes avec
classObject, qui est de type String et qui contient le Nom de ma classe.



Merci encore



gaga38
0
Rejoignez-nous