Bem pessoal, as minhas dúvidas são as linhas comentadas…eu até ja estudei essa parte de eventos no período passado mas eu nao lembro direito…o material do periodo passado ta tudo no meu pc e meu pc ta ruim, ele nao ta ligando e o material que eu achei na internet eu não consegui entender direito.
Será que vcs podem me explicar em uma linguagem simples o que as linhas comentadas fazem, eu sei que é pedir muito mas eu gostaria muito que vocês me ajudassem.
publicclassTestando{publicTestando(){System.out.println("Entrou no construtor..");}{System.out.println("Entrou no bloco de código...");}publicstaticvoidmain(Stringargs[]){newTestando();}}
Qual o primeiro passo de execução do programa???? Será o bloco de código.. Saida do programa.:
Entrounoblocodecódigo...Entrounoconstrutor..
Bom... eu tenho até medo de responder essa sua pergunta. Pergunta simples d+ sempre tem uma pegadinha. Qual será ela?
Tchauzin!
T
tutano007
desculpe a demora, mas como eu falei, estou sem PC.
eu sei que não fazem nada, eu queria uma explicação do código, eu vou falar pelo o que eu entendi mas nao sei se vai estar certo, ai vcs podem me corrigir ?
PublicclassControle{privateTelaPrincipaltp;publicControle(TelaPrincipaltp){this.tp=tp;this.tp.addMenuListener(newMenuListener());//adiciona à varivael tp o método MenuListener que esta na classe TelaPrincipal passando para tp a classe MenuListener, essa parte eu nao entendi muito bem. }classMenuListenerimplementsActionListener//classe onde trata todos os eventos de tp.{publicvoidactionPerformed(ActionEvente)//método de tratamento dos eventos que eu quiser colocar.{if(e.getActionCommand().equals("Depositar")){TelaDepositotd=newTelaDeposito();td.addDepositoListener(newDepositoListener(td));//o mesmo caso do MenuListener acima, eu nao entedi.}}}classDepositoListenerimplementsActionListener...}
deu pra entender agora minha dúvida ?
eu gostaria muito de uma, não é bem uma explicação, mas um comentário citando o que acontece nas linhas comentadas.
abraços.
aalexmonteiro
Cara talvez eu ajude!
Na classe TelaPrincipal foi adicionado na linha 01 um menu do tipo ActionListener, que é na verdade é uma interface do Java utilizada para eventos. Na linha 03 ele adicionou um item de menu no menu . Ex: Menu Arquivo/item de menu Salvar.
Na classe Controle na linha 03 foi criada uma varíavel do tipo TelaPrincipal, pois com essa variável poderei chamar o método addMenuListener na classe TelaPrincipal. Na linha 05 é criado um método que recebe como parâmetro um objeto TelaPrincipal. Na linha 07 é repassado o valor do parâmetro para o atributo declarado na linha 03. Na linha 04 é chamado o método addMenuListener criado na TelaPrincipal, que recebe como o parâmetro o construtor MenuListener (construtor é um método responsável por inicializar os valores de atributos de uma classe). Mesmo caso da linha 18 que recebe como parâmetro um construtor da classe DepositoListener.
Dica: pesquise sobre construtores. vai facilitar mais o entendimento.
1- é chamado o método addMenuListener, mas lá na classe TelaPrincipal o método recebe como parâmetro “ActionListener l”, na hora de chamar o método nessa linha eu num teria que passar alguma coisa ?
2 - é criado o objeto onde logo após eu crio a classe MenuListener onde eu vou tratar o evento.
aalexmonteiro
Vamos lá! Não sei se vou ser claro.
Perceba que na linha 11 da classe Controle a classe MenuListener está implementando uma outra interface ActionListener que possui o método actionPerformed que é implementado a partir da linha 13, pois as interfaces tem seus métodos implementados em classes concretas. (Pesquise sobre interfaces e heranças) . E realmente é passado alguma coisa que é um objeto MenuListener que implementa a ActionListener.