AppletTalk.com Forum Index AppletTalk.com
Java discussions newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Ottenere il nome della classe corrente

 
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java (Italian)
View previous topic :: View next topic  
Author Message
APB
Guest





PostPosted: Sun Jun 27, 2004 10:53 pm    Post subject: Ottenere il nome della classe corrente Reply with quote



Per assistermi nel debugging ho creato un metodo verbose(String text) che
mi stampa a console i vari passi di esecuzione.

Al suo interno il metodo verifica che il debugging sia attivato (variabile
statica VERBOSE) e quindi scrive su standard out.

Vorrei che scrivesse anche il nome della classe. Per ora l'ho scritto a
mano visto che il metodo verbose() è copiato & incollato in ogni classe ma
ora vorrei riordinare il tutto e mettere il metodo in una superclasse,
dalle quale le altri discendono.

Dovrei quindi parametrizzare:
===================
System.out.println("(Mambo) " + prefix + text.replaceAll("n", "n(Mambo)
"));
===================

Questo per la classe "Mambo"... come lo rendo universale?

Grazie!

Alex.
--
___________________________________________________________
a p bertolini

(www.webwarrior.org)


Back to top
Gian Luca Dalla Torre
Guest





PostPosted: Mon Jun 28, 2004 6:18 am    Post subject: Re: Ottenere il nome della classe corrente Reply with quote



Ogni classe Java possiede il metodo getClass() (ereditato da Object) che
contiene le informazioni di reflection (tra cui anche il nome).

Però per fare logging ti consiglio di utilizzare il framework Log4J che
ti semplificherà molto la vita:

http://logging.apache.org/log4j/docs/
Back to top
APB
Guest





PostPosted: Mon Jun 28, 2004 9:04 am    Post subject: Re: Ottenere il nome della classe corrente Reply with quote



Dario ca?èinomane wrote:
Quote:

IMHO è decisamente una scelta nob-buona.
Se hai gia, per esempio, le classi Frutta, Impiegati e Alberghi
vorresti fare una super-classe di queste tre (che non hanno un ca..o
in comune fra loro!) per poter usare il metodo verbose?
Molto poco Object Oriented!

Grazie Dario ma ci sono numerosi altri motivi per farlo, fosse solo per
questo sarei sicuramente d'accordo!

Alex

--
___________________________________________________________
a p bertolini

(www.webwarrior.org)



Back to top
APB
Guest





PostPosted: Mon Jun 28, 2004 9:11 am    Post subject: Re: Ottenere il nome della classe corrente Reply with quote

Gian Luca Dalla Torre wrote:
Quote:
Ogni classe Java possiede il metodo getClass() (ereditato da Object)
che contiene le informazioni di reflection (tra cui anche il nome).

Sì, ho visto il metodo ma non riesco ad inserirlo nel codice! Lo voglio
applicare alla classe corrente e non a una generica classe di cui conosco
già a priori l'istanza.

Volevo fare qualcosa del tipo
System.out.println(this.getClass().getName()) ma ho delle storie sul "this"

Quote:

Però per fare logging ti consiglio di utilizzare il framework Log4J
che ti semplificherà molto la vita:

http://logging.apache.org/log4j/docs/

Me lo tengo da parte. Per ora voglio solo un po' di verbosità durante
l'esecuzione, senza dovermi portar dietro una ulteriore libreria. Grazie
però, sembra davvero "cool"!

Alex.

--
___________________________________________________________
a p bertolini

(www.webwarrior.org)



Back to top
Gian Luca Dalla Torre
Guest





PostPosted: Mon Jun 28, 2004 9:24 am    Post subject: Re: Ottenere il nome della classe corrente Reply with quote

Quote:

Volevo fare qualcosa del tipo
System.out.println(this.getClass().getName()) ma ho delle storie sul "this"


Che tipo di storie?
In teoria this.getClass() non dovrebbe darti nessun problema...

Back to top
APB
Guest





PostPosted: Mon Jun 28, 2004 9:31 am    Post subject: Re: Ottenere il nome della classe corrente Reply with quote

Gian Luca Dalla Torre wrote:
Quote:
Volevo fare qualcosa del tipo
System.out.println(this.getClass().getName()) ma ho delle storie sul
"this"


Che tipo di storie?
In teoria this.getClass() non dovrebbe darti nessun problema...

System.out.println(this.getClass().getClassName());
"Cannot use this in a static context"

Cmq ho usato il trucco di Dario di prendere il primo elemento dello
stack-trace. Non è elegante ma fa quello che desidero.

Alex.

--
___________________________________________________________
a p bertolini

(www.webwarrior.org)



Back to top
Display posts from previous:   
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.