Récupérer l'objet class dont dépend la méthode statique appelée

Récupérer l'objet class dont dépend la méthode statique appelée - Java - Programmation

Marsh Posté le 31-10-2003 à 10:02:37    

Je m'explique :
 
J'ai une classe exécutable Toto, dans laquelle j'ai ma méthode public static void main(string[] args);
 
Comment remonter à l'objet class (Toto) dans la méthode main. Je ne peux pas faire de getClass(), vu que je ne tiens pas à instancier Toto. Quel recours ai-je ?

Reply

Marsh Posté le 31-10-2003 à 10:02:37   

Reply

Marsh Posté le 31-10-2003 à 10:07:21    

pourquoi faire?
 

Code :
  1. Class totoClass = Toto.class


 
:p


Message édité par darklord le 31-10-2003 à 10:07:32

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

Marsh Posté le 31-10-2003 à 10:33:36    

Pour un système de logging, on dispose d'une quantité de programmes de chargements (des tonnes de Toto si tu veux) qui exécutent leurs main en séquence et balancent leurs exception dans "gros.log", qui joue le rôle de déversoir général. Si l'on récupère une exception, on veut aussi savoir quel programme est responsable, d'où la signature de notre méthode de log :
 
void log(String message, Throwable t, Class c);
 
Cette méthode, utilisée dans un contexte statique ne permet pas d'utiliser le traditionnel getClass().
 
La solution que tu donnes doit être la seule envisageable.


---------------
Le site de ma maman
Reply

Marsh Posté le 31-10-2003 à 10:59:40    

Cherrytree a écrit :

La solution que tu donnes doit être la seule envisageable.


 
non.
 
Utilise log4j


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

Marsh Posté le 31-10-2003 à 11:01:15    

Cherrytree, tu t'es trompé de multi :o


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

Marsh Posté le 31-10-2003 à 11:31:49    

[:rofl] [:rofl] [:rofl]


---------------
"Colère et intolérance sont les ennemis d'une bonne compréhension." Gandhi
Reply

Marsh Posté le 31-10-2003 à 11:36:30    

Faut tout foutre dans un while(true), bande d'universitaires mal baisés :o


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 31-10-2003 à 11:37:18    

Taiche a écrit :

Faut tout foutre dans un while(true), bande d'universitaires mal baisés :o


 
absolument :o


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

Marsh Posté le 31-10-2003 à 12:06:59    

Cherrytree a écrit :


La solution que tu donnes doit être la seule envisageable.


y en a une autre en jdk1.4 :

Code :
  1. public static void main(String args[]) {
  2.    Class c = Class.forName(new Exception.getStackTrace()[0].getClassName());
  3. }


 :whistle:


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 31-10-2003 à 12:47:19    

benou a écrit :


y en a une autre en jdk1.4 :

Code :
  1. public static void main(String args[]) {
  2.    Class c = Class.forName(new Exception.getStackTrace()[0].getClassName());
  3. }


 :whistle:  


 
 [:ddr555]  [:grinking]


---------------
Le Tyran
Reply

Marsh Posté le 31-10-2003 à 12:47:19   

Reply

Marsh Posté le 31-10-2003 à 13:38:03    

benou a écrit :


y en a une autre en jdk1.4 :

Code :
  1. public static void main(String args[]) {
  2.    Class c = Class.forName(new Exception.getStackTrace()[0].getClassName());
  3. }


 :whistle:  


 
[:rofl2]


---------------
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