IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Instancier une classe à partir de son nom?


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 98
    Par défaut Instancier une classe à partir de son nom?
    Bonjour tous le monde,
    voici ce que je souhaiterai faire:
    instancier une classe à partir de son nom en passant le nom comme parametre d'une méthode, je pourrai ainsi avoir des objet différents suivant le nom de la classe passé en parametre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Object et=maMethode("etudiant");
    et est de type étudiant;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Object ens=maMethode("enseignant");
    ens est de type enseignant

    je vous remercie d'avance

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 268
    Par défaut
    J'ai crée une classe qui permet d'instancier n'importe quelle classe, et d'en appeler les méthodes. Je la mets en pièces jointe.

    Voici un exemple d'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    try {
    	NCallClasse panneau = new NCallClasse(action.getNomClassePanneau());
    	Class[] paramètres = { NCallClasse.cString, NCallClasse.cString };
    	String[] arguments = { action.getNomFichierPanneau(), action.getNomPanneau() };
    	pan = (NPanneau) panneau.appelerConstructeur(paramètres, arguments);
    } catch (NClasseException e) {
    	e.afficher("Classe '" + action.getNomClassePanneau() + "' non implémentée");
    }
    J'espère que ça t'aidera.
    Fichiers attachés Fichiers attachés

  3. #3
    Membre expérimenté Avatar de sewatech
    Inscrit en
    Février 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Février 2007
    Messages : 141
    Par défaut
    Regarde du coté de Class.forname

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 98
    Par défaut
    Je vous remercie pour vos réponses, je vais les étudier et je vous ferai part du résultat
    Merci

  5. #5
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Par défaut
    Si tu t'y connais en patron de conception , regarde le patron AbstractFactory, c'est concu pour ton résoudre ton pb.

  6. #6
    Membre Expert

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Par défaut
    Bonjour,

    Ce type d'appel a un nom : l'introspection

    Je te conseille de lire cet article qui sera très instructif

Discussions similaires

  1. Instancier une classe sans connaitre son nom
    Par Molkobain dans le forum Langage
    Réponses: 8
    Dernier message: 16/02/2009, 14h49
  2. Réponses: 10
    Dernier message: 26/06/2008, 11h25
  3. [IL]Instancier un objet à partir de son nom de classe
    Par neo.51 dans le forum Framework .NET
    Réponses: 2
    Dernier message: 08/08/2007, 11h43
  4. Réponses: 6
    Dernier message: 06/04/2007, 21h20
  5. Réponses: 7
    Dernier message: 29/11/2006, 11h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo