Caster dynamiquement un objet [Résolu]

cs_TomC 42 Messages postés mardi 30 décembre 2003Date d'inscription 17 mai 2006 Dernière intervention - 17 août 2005 à 19:32 - Dernière réponse : cs_TomC 42 Messages postés mardi 30 décembre 2003Date d'inscription 17 mai 2006 Dernière intervention
- 19 août 2005 à 17:00
Bonjour à tous.
Je cherche la manière de caster dynamiquement un objet.
Je sais récuperer la classe de l'objet à l'aide du package java.lang.reflect :
Class c = objet.getClass();
ensuite je voudrais le caster avec c, mais je ne sais pas comment m'y prendre.
Si quelqu'un pouvait m'éclairer ce serait sympa.
merci
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
cs_GodConan 2116 Messages postés samedi 8 novembre 2003Date d'inscriptionContributeurStatut 6 octobre 2012 Dernière intervention - 17 août 2005 à 20:35
3
Merci
deja si tu pense a le caster c est que tu pense savoir en quel ;o) class dc il te suffi de tassurer qu il correspond bien a cette class et pour cela tu doit utiliser

"instance of " par exmeple

if ( object instanceof TaClass )
{
TaClass taClass = (TaClass)object;
}

otrement si tu est sur de la class tu peu directement faire

((TaClass)object).laMethode();

GodConan

Merci cs_GodConan 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de cs_GodConan
cs_sammie 9 Messages postés jeudi 18 août 2005Date d'inscription 22 août 2005 Dernière intervention - 18 août 2005 à 10:20
0
Merci
Un cast est forcément statique, par définition. Un Cast dynamique n'a pas de sens ....

Le cast permet au développeur de préciser de quel type est l'objet
manipulé afin d'accéder à des services particuliers fournis uniquement
par ce type d'objets.

Tu peux effectivement passer par le instanceof, comme le propose GodConan, il n'y a pas d'autres solutions possibles ...



Ou alors, il faut en dire plus sur ce que tu veux faire...
Commenter la réponse de cs_sammie
neodelphi 442 Messages postés jeudi 4 avril 2002Date d'inscription 11 août 2008 Dernière intervention - 18 août 2005 à 11:42
0
Merci
C'est vrai que caster "dynamiquement" un objet n'a pas de sens... La solution de GodConan me semble la meilleure.

neodelphi
Commenter la réponse de neodelphi
cs_neodante 2837 Messages postés lundi 11 août 2003Date d'inscription 16 décembre 2006 Dernière intervention - 18 août 2005 à 11:51
0
Merci
Si tu fais un cast dynamique c'est que tu as mal conçu ton programme ... quelques petit rappel de la POO s'impose alors ..



++
Commenter la réponse de cs_neodante
cs_GodConan 2116 Messages postés samedi 8 novembre 2003Date d'inscriptionContributeurStatut 6 octobre 2012 Dernière intervention - 18 août 2005 à 22:44
0
Merci
evidement le cast est sutout utiliser avec les interface ... ;o) pour utiliser leurs methodes ... sans avoir besoin de connaitre la nature exacte de l object.... ;o)

++

GodConan
Commenter la réponse de cs_GodConan
cs_TomC 42 Messages postés mardi 30 décembre 2003Date d'inscription 17 mai 2006 Dernière intervention - 19 août 2005 à 17:00
0
Merci
en fait je voulais récuperer un ResultSet dans un client à l'aide de RMI et puis instancier l'objet correspondant à un enregistrement du ResultSet automatiquement. Cela m'aurait permis de créer une classe unique pour récupérer et instancier les objets. Je n esais pas si c'est trés clair...
Bref, sur les conseils de tt le monde je vais rectifier le tir :-)
merci à tous pour vos réponses
tom
Commenter la réponse de cs_TomC

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.