Passer la référence d'une fonction

Passer la référence d'une fonction - Java - Programmation

Marsh Posté le 13-03-2005 à 13:49:29    

Bonjour
 
j'ai crée plusieurs classes qui permette de gerer des objects swing
 
cependant afin que ce soit des classes réutilisable, je voudrai faire une fonction "setAction" qui me permet de fixer un fonction a appeler qui est en dehors de la classe
 
en gros quand je vais appuyer sur un bouton, je voudrai que ca appelle un fonction d'une autre classe, mais je voudrai pouvoir mettre n'importe quelle fonction en passant la reference
 
est ce realisable? comment doit je faire?

Reply

Marsh Posté le 13-03-2005 à 13:49:29   

Reply

Marsh Posté le 13-03-2005 à 13:53:47    

bin t'as pas de pointeur de fonction C/C++ style, ni de delegate c# style (dans java 2.9 dans 20ans ptet...). Donc tu peux pas comme tu veux, mais avec une interface tu peux t'en depetrer

Reply

Marsh Posté le 13-03-2005 à 14:34:02    

:sweat:

Reply

Marsh Posté le 13-03-2005 à 14:46:33    

chrisbk a écrit :

bin t'as pas de pointeur de fonction C/C++ style, ni de delegate c# style (dans java 2.9 dans 20ans ptet...). Donc tu peux pas comme tu veux, mais avec une interface tu peux t'en depetrer


euh http://java.sun.com/j2se/1.4.2/doc [...] ethod.html [:zaib3k]
 
 
mais bon, clairement y'a des chances qu'un ptit coup de design-comm-i-faut ferait mieux l'affaire


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 13-03-2005 à 14:48:40    

ah oué super, la reflection, quelle brillante idée, du typage de pro, des perfs absolue, faut se balade le ptr sur la methode et le ptr sur l'objet (le tout justement finement casté en Object), la grande classe [:zaib3k]
 
t'as pas un truc sentant encore plus la colle dans ton affaire ?  
 

Reply

Marsh Posté le 13-03-2005 à 14:51:05    

ov3rflow : ske tu peux faire c'st donc declarer une interface pour ta fonction, puis faire une classe anonyme derivant de stinterface qui mapera sur la fonction cible.
 
Chaipas si jsuis clair, mébon [:petrus75]

Reply

Marsh Posté le 14-03-2005 à 22:35:56    

Il faudrait créer ta propre classe qui implémenterait l'interface ActionListener.Cela  te permettrait de faire tout ce dont tu as envie...

Reply

Marsh Posté le 24-03-2005 à 11:35:48    

arf, j'ai oublié de vous dire merci  :hello:   :whistle:

Reply

Sujets relatifs:

Leave a Replay

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