Comment accéder a l'instance d'une classe depuis une autre classe?

Comment accéder a l'instance d'une classe depuis une autre classe? - Java - Programmation

Marsh Posté le 01-08-2004 à 17:56:33    

Code :
  1. import a.aa;
  2. import b.bb;
  3. public class depart{
  4.     aa classeA;
  5.     bb classeB;
  6.     public depart(){
  7.         classeA=new aa;
  8.         classeB=new bb;
  9.     }
  10.     public static void main(String[] args) {
  11.         // TODO code application logic here
  12.         new depart();
  13.     }
  14. }


Comment est ce que je devrais faire pour apeller une fontion de classeA depuis une des fonctions de classeB?
 
J'ai pensé a utiliser des variables statiques dans la classe aa mais ca me poserait un autre probléme plus tard qui m'interdit cette méthode.
 
J'ai aussi pensé a faire passer la classe a chaque appel de fonction mais ca deviendrait vite le bordel. (obligé de passer des classe dans tous les sens dés qu'une fonction lointaine pourait en avoir besoin)
 
J'ai pensé enfin a utiliser des "event" mais il faudrait pouvoir alors attendre la fin de l'éxécution de la fonction apellé par l'évènement avant de continuer et je suis pas sur que ça soit automatiquement le cas. (J'ai pas l'habitude de déclancher des événements directement dans une fonction)
 
Pour le moment, je vois pas d'autres moyens de me dépétrer de tout ça.
 
Bref, je tourne en rond avec ce probléme. Si quelqu'un peut me mettre sur la voie ca m'arrangerait.
 
Merci beaucoup.

Reply

Marsh Posté le 01-08-2004 à 17:56:33   

Reply

Marsh Posté le 01-08-2004 à 18:15:49    

dans ta classe bb :
 
public class bb extends aa ...

Reply

Marsh Posté le 01-08-2004 à 18:53:32    

S'il s'agissait juste d'utiliser le code d'une fonction, ca marcherait en effet, mais dans mon cas a moi, je peux pas le faire vu que la classe "aa" gére les accés a la base de donnée.
Comme c'est la classe "bb" qui conait la requete a exécuter et que je ne compte ni avoir de nombreuses conections utilisé (une liaison ouverte pour chaque objet utilisant la base de donnée) ni passer mon temp a me conecter et déconecter a cette base, je peux pas m'en sortir aussi simplement. :(
 
Merci quand même d'avoir essayé de m'aider.

Reply

Marsh Posté le 01-08-2004 à 18:56:53    

Je comprend pas vraiment ...
 
Créé une instance de ta classe aa dans ta classe bb dans ces cas là ...

Reply

Marsh Posté le 01-08-2004 à 19:11:02    

et pourquoi pas passer une instance de la classe aa dans le constructeur de la classe bb ? Comme ca on passe toujours la même instance classeA (par exemple) à toute nouvelle instance bb créée...

Reply

Marsh Posté le 01-08-2004 à 19:21:09    

GaSPaRD77 a écrit :

dans ta classe bb :
 
public class bb extends aa ...


 
[:totoz]
 
Euh sinon un event c'est pas spécialement asynchrone, je vois pas le problème. Créer une instance de A dans B c'est trop dur?


Message édité par darklord le 01-08-2004 à 19:21:54

---------------
Just because you feel good does not make you right
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed