dúvida com esses métodos

6 respostas
T

Pessoal peguei uns tutos e to começando a mexer com Java, nesse código tenho algumas dúvidas

botaosair.addActionListener(
    new ActionListener(){
           public void actionPerformed(ActionEvent e){
               System.exit(0);
           }
   }
);

essa ActionListener seria a ação do botão, tem algum porquê do nome “Listener”?

e no actionPerformed o que significa o “e” depois do ActionEvent? seria somente um nome de um objeto ou algo assim? Vlw…

6 Respostas

m0ska

Sim, tem algum porque, são padrões de convenção, ou seja, esta nomeclatura não é obrigatoria, mas através de uma certa padronização pode-se ler um código com mais facilidade, quanto ao (e), isto é a referência para o objeto. :slight_smile:

Alkamavo
  1. botaosair.addActionListener(
  2. new ActionListener(){
    
  3. public void actionPerformed(ActionEvent e){
    
  4. System.exit(0);
    
  5. }
    
  6. }
  7. );

botaosair.addActionListener(-> é um metodo
new ActionListener()
-> constructor da classe ActionListener()

ActionEvent e-> objecto e do tipo actionEvent

mas eu nao sei onde tirast isso… :twisted:

Grinvon

O método recebe um ActionListener, como todo listener é uma interface, dessa forma obriga a nós nesse contrato a implementar nesse caso um método de assinatura actionPerformed(ActionEvent e).

O ActionEvent é uma classe concreta que herda de AWTEvent.

Temos então herdado o método getSource, que retorna para nós o JComponent em questão. o getSource nada mais é do que um encapsulamento para um Object genérico:

protected transient Object source;

Dessa forma conseguimos manipular eventos com os botões.

T

vlw pessoal, vlwm msm pela ajuda…respondendo ao Alkamavo, isso eu tirei de uma apostila.

Alkamavo

Muito bem…temos Curiosos :oops:

caiocout

indo bem ao pé da letra Listener significa “ouvidor”, ou seja, o ActionListener é a classe que vai ficar responsável por “ouvir” os eventos do componente e disparar o método actionPerformed quando o evento ocorrer :smiley:

Criado 26 de novembro de 2007
Ultima resposta 26 de nov. de 2007
Respostas 6
Participantes 5