Voce precisa de informacoes sobre a carga e a execucao da classe. Esse problema nao eh lah muito facil de resolver, e voce acha esses problemas quando escreve Debuggers.
Eh impossivel fazer um programa como esses sem alterar o codigo do programa alvo. Isso pode ser visto no proprio javac. Se voce coloca a opcao -g:none, os debuggers param de funcionar (veja que a alteracao do programa nao precisa ser no codigo fonte, nesse caso eh no codigo gerado pelo compilador). Se voce realmente precisa escrever esse programa, e gosta de escovar bits (ou Byte Codes), leia a especificacao da JVM http://java.sun.com/docs/books/vmspec/html/VMSpecTOC.doc.html Eh um bom lugar para comecar. E boa sorte. Se voces tem algum dinheiro para investir em ferramentas, outra opcao eh procurar um programa comercial pronto. Procure os programas de Profiling. Olha o OptimizeIt (www.intuisys.com) e o JProbe (www.sitraka.com) Silvio On Thu, 01 November 2001, [EMAIL PROTECTED] wrote: > > Obrigado, > Mas eu ainda seria mais chato... pois eu n�o posso literalmente passar parametro >algum, seja para o construtor ou para o m�todo. > A inten�a� � ter um controle (para log) das rotinas chamadas. > Eu n�o sei se existe algum evento que pode ser capturado quando um m�todo qqr � >invocado, seria +/- isso que eu preciso. > Valeu a for�a! > > Fernando > > -----Mensagem original----- > De: Eduardo Alex [mailto:[EMAIL PROTECTED]] > Enviada em: Thursday, November 01, 2001 12:09 AM > Para: [EMAIL PROTECTED] > Assunto: Re: [java-list] Descobrir o chamador > > > Ja que vc nao pode passar parametros no getTeste(), voce entao passa a > classe que esta instanciando no construtor da ClasseA > > A classe a ficaria assim. > > class ClasseA { > Object instance; > public ClasseA(Object obj) { > instance=obj; > } > public String getTeste() { > if (obj instanceof ClasseB) { > // faz o q vc quizer, pois so entra aqui se for ClasseB > } > return "testando..."; > } > } > > e a clase b > > class ClasseB { > public void teste() { > ClasseA a = new ClasseA(this); > System.out.println( a.getTeste() ); > } > } > > > espero q tenha ajudado > > > Eduardo Alex > Netra Tecnologia > ----- Original Message ----- > From: <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, October 31, 2001 6:25 PM > Subject: [java-list] Descobrir o chamador > > > > Essa eu me deparei e n�o tenho id�ia de como resolver... e nem de como > come�ar a resolver. > > Eu preciso gravar a informa��o, em um determinado m�todo, de qual classe > chamou este m�todo e qual m�todo dessa classe o chamou. > > Ex: > > class ClasseB { > public void teste() { > ClasseA a = new ClasseA(); > System.out.println( a.getTeste() ); > } > } > > sendo, > > class ClasseA { > public String getTeste() { > // AQUI EU PRECISO SABER QUE ESTOU SENDO EXECUTADO POR ClasseB.teste() ! > return "testando..."; > } > } > > Alguem tem id�ia de como sair dessa ? > > PS: Eu n�o posso passar nenhum parametro adicional para getTeste().... > > > Valeu a todos! > > ------------------------------ LISTA SOUJAVA ---------------------------- > http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP > d�vidas mais comuns: http://www.soujava.org.br/faq.htm > regras da lista: http://www.soujava.org.br/regras.htm > para sair da lista: envie email para [EMAIL PROTECTED] > ------------------------------------------------------------------------- > > > > ------------------------------ LISTA SOUJAVA ---------------------------- > http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP > d�vidas mais comuns: http://www.soujava.org.br/faq.htm > regras da lista: http://www.soujava.org.br/regras.htm > para sair da lista: envie email para [EMAIL PROTECTED] > ------------------------------------------------------------------------- > > ------------------------------ LISTA SOUJAVA ---------------------------- > http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP > d�vidas mais comuns: http://www.soujava.org.br/faq.htm > regras da lista: http://www.soujava.org.br/regras.htm > para sair da lista: envie email para [EMAIL PROTECTED] > ------------------------------------------------------------------------- ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP d�vidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------
