Alguém poderia me explicar o que vem a ser um LISTENER ???
Um listener é normalmente implementado em forma de interface.
Ele serve para escutar o que acontece em um objeto e avisar a outro.
Exemplo:
Eu tenho um sistema que vc tuna carro.
Ai quando vc altera o carro.cor vc tem que avisar a parte gráfica do programa pra ela trocar a cor do carro na tela
Então o carro pode ter um espaço para vc colocar um ouvido (listener) da tela nele
então
na tela ao criar o carro:
[code]Carro carro = new Carro(Color.white);
carro.addColorChangeListener(new ColorChangeListener(){
colorChanged(ColorChangeEvent e)
{
panelCarro.setColor(e.getNewColor);
[/code]
e no objeto no setColor, vc chama esse evento
setColor(Color color)
{
Color oldColor = this.color;
this.color = color;
fireColorChangeListener(oldColor, color);
Desculpe a falta de fechar as tags mas meu teclado ta falhando e robaram meu mouse
Mas essa é a ideia, ai quando vc muda o objeto a tela muda “sozinha”, ou “é avisada” sobre o que acontece em outro lugar
traduzindo rusticamente, é um “ouvinte”
exemplo: se eu tenho um botão e nele adiciono um actionListener, ele ganha a capacidade de “escutar por uma ação”
ou seja…
ja tenho um botão criado, aqui eu adiciono o ActionListener nele…
botao.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
// Aqui ocorre o evento quando o botão recebeu a ação
}
});
de uma olhada aqui: http://download.oracle.com/javase/tutorial/uiswing/events/index.html
Imagine o Listener com alguém sempre atento. Um vigia de uma loja por exemplo. Ele vai agir caso seja estimulado para isso, um assalto por exemplo.
Um Listener é um “cara” sempre atento, qualquer modificação ele é notificado e irá entrar em ação.