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

avec Java Discussion :

Récupérer une variable de la classe appelante


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 254
    Par défaut Récupérer une variable de la classe appelante
    Bonjour à tous,

    Si j'ai la classe A qui crée la classe B. Est ce que B peut accéder aux variables de la classe A (déclarés en public évidemment) sans passer par la méthode traditionnelle qui consiste à passer les variables en paramètre?

    Merci de vos réponses...

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    je suppose que vous faites de l'abus de language et que vous voulez dire
    Si j'ai une instance de la classe A qui crée une instance de la classe B. Est ce que l'instance de B peut accéder aux variables de l'instance de A
    oui à condition de passer l'instance de A en paramètre à l'instance de B.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public class B {
        private A a;
        public B(A a){
            this.a=a;
        }
        /// .......
        a.uneMethode();
        /// .......
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public class A {
       /// .......
       new A(this);
       /// .......
    }

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 254
    Par défaut
    oui c'était ce que je voulais dire, merci pour votre réponse...

    Par contre c'est gourmand en ressource ça? C'est dans des boucles que je voudrais utiliser ça... et c'est plusieurs milliers de fois...

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    ben non, un référence en java, c'est 64 bits il me semble . Je m'inquiéterais plus pour la mémoire occupée par B et toute ses données si c'est vraiment critique à ce point là.

    Mais si tu ne fait qu'en générer quelques milliers, osef

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 254
    Par défaut
    Ben en fait j'ai augmenté l'espace mémoire (via l'argument je-ne-sais-plus-lequel)

    Mais étant donné que je crée l'instance B dans la boucle, elle n'écrase pas l'instance précédente? Ca marche comment niveau perf tout ça?

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 254
    Par défaut
    J'ai trouvé une autre façon de faire sans passer la classe A en paramètre dans le constructeur de la classe B.

    Il suffisait de déclarer dans A les variables en tant que static, et dans B on y accède simplement en faisant :

    variableB = A.nomVariable;

    Après comme toujours je ne sais pas ce que ça vaut niveau perf...

Discussions similaires

  1. Comment récupérer une variable déclarée GLOBALE dans une classe PHP
    Par Globolite dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 08/03/2013, 13h41
  2. Récupérer une variable d'une classe différente
    Par aziz-be dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 24/09/2012, 08h42
  3. comment récupérer une variable dans une autre classe java
    Par realiste dans le forum Interfaces Graphiques en Java
    Réponses: 7
    Dernier message: 19/04/2011, 19h23
  4. récupérer une variable d'une fonction dans une classe
    Par free_dom dans le forum Général Python
    Réponses: 20
    Dernier message: 08/07/2009, 12h35
  5. Récupérer une variable d'une autre classe
    Par Chris33 dans le forum Général Python
    Réponses: 2
    Dernier message: 06/12/2005, 10h45

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