djdvd-Bonheur
Messages postés8Date d'inscriptionvendredi 28 novembre 2014StatutMembreDernière intervention29 avril 2015
-
27 avril 2015 à 13:53
KX
Messages postés16734Date d'inscriptionsamedi 31 mai 2008StatutModérateurDernière intervention24 avril 2024
-
30 avril 2015 à 00:44
Bonjour,
Comment detecter une méthode est invoquée par introspection java.
Quelqu'un peut m'aider.
KX
Messages postés16734Date d'inscriptionsamedi 31 mai 2008StatutModérateurDernière intervention24 avril 2024127 27 avril 2015 à 20:53
Bonjour,
Tu ne peux pas. L'introspection permet d'obtenir des informations sur les classes et les méthodes, mais c'est une analyse du code, ça n'est pas du tout raccroché au fil d'exécution du programme.
Si tu veux détecter le moment où une méthode est invoquée, il faut modifier le code de cette méthode pour lui ajouter ce comportement.
djdvd-Bonheur
Messages postés8Date d'inscriptionvendredi 28 novembre 2014StatutMembreDernière intervention29 avril 2015 29 avril 2015 à 11:02
KX,
Bonjour vous avez un example d un code pour illustrer comment modifier le comprotement de la, methode envue d avoir le fil d'exécution.
KX
Messages postés16734Date d'inscriptionsamedi 31 mai 2008StatutModérateurDernière intervention24 avril 2024127 30 avril 2015 à 00:44
Bonjour,
Pour savoir si une méthode est appellée tu peux faire un simple :
void toto() {
System.out.println("appel de toto");
//...
}
C'est un peu le principe des logs, qui vont écrire dans un fichier ou en console chaque fois que tu fais quelque chose.
Éventuellement tu peux aussi rajouter une information utile pour comprendre qui t'appelle, c'est la stack trace du thread.
Exemple :
void toto() {
StackTraceElement[] elements = Thread.currentThread().getStackTrace();
System.out.println("appel de toto "+Arrays.toString(elements));
//...
}
Bref rien de compliqué, pas besoin d'introspection ici.