Eu tenho uma classe que implementa WindowListener e gerencia várias janelas e gostaria de saber se tem como eu fazer tipo:
Se a classe X chamou o método, faça A
Se a classe Y chamou o método, faça B
Se a classe Z chamou o método, faça C
Alguem sabe como fazer para descobri qual classe que disparou o evento?
Tente usar Log4J(gera logs).
usa o método getSource herdado por WindowEvent de EventObject.
Ele vai te retornas um Object que é a fonte do evento (a janela no caso). Ai é só vc verificar qual que é.
Falow!
Só complementanto o que o david falou:
Para testar se a origem é da classe ou das filhas dela:
If (evento.getSource() instanceof ClasseX)
{
//Faça algo
return;
}
Para testar se a origem é somente daquela classe não uma de suas filhas:
If (evento.getSource().getClass() == ClasseX)
{
//Faça algo
return;
}