Vídeo: Aula de Java 063 - Thread, execuções simultâneas 2024
Aqui está um segredo bem guardado: os programas Java são multithreaded, , o que significa que várias coisas estão acontecendo ao mesmo tempo, sempre que você executar um programa Java. Claro, o computador está executando o código que você escreveu, mas também está executando outro código (código que você não escreveu e não vê).
Todo esse código está sendo executado ao mesmo tempo. Enquanto o computador executa as afirmações do seu método principal, um após o outro, o computador demora, sneaks afastado brevemente e executa instruções de outros métodos não vistos. Para a maioria dos programas Java simples, esses outros métodos são aqueles que são definidos como parte da Java Virtual Machine (JVM).
Por exemplo, Java possui um tópico de gerenciamento de eventos. Enquanto seu código é executado, o código do thread de tratamento de eventos é executado em segundo plano. O código do thread de tratamento de eventos escuta os cliques do mouse e toma as ações apropriadas sempre que um usuário clica no mouse. A figura ilustra como isso funciona.
Quando o usuário clicar no botão, o tópico de gerenciamento de eventos diz: "Ok, o botão foi clicado. Então, o que devo fazer sobre isso? "E a resposta é" Ligue para alguns métodos ActionPerformed. "É como se o tópico de manipulação de eventos tivesse um código parecido com isto:
se (buttonJustGotClicked ()) {object1. actionPerformed (infoAboutTheClick); objeto2. actionPerformed (infoAboutTheClick); objeto3. actionPerformed (infoAboutTheClick);}
Claro, por trás de cada resposta é mais uma questão. Nessa situação, a questão de acompanhamento é "Onde o segmento de manipulação de eventos encontra a ação de métodos formados para chamar? "E há outra pergunta:" E se você não quiser que o tópico de tratamento de eventos chame certos métodos de ação implementada que estão à espreita em seu código? "
Bem, é por isso que você chama o método addActionListener. Na listagem, pressione o botão
. addActionListener (this);
informa o thread de tratamento de eventos, "Coloque o método actionPerformed deste código em sua lista de métodos a serem chamados. Ligue para o método ActionPerformed deste código sempre que o botão for clicado. "
Então, é assim que funciona. Para que o computador chame um método actionPerformed, você registrará o método com o thread de gerenciamento de eventos de Java. Você faz esse registro chamando addActionListener. O método addActionListener pertence ao objeto cujos cliques (e outros eventos) você está esperando.
Na lista, você está esperando que o objeto do botão seja clicado e o método addActionListener pertence a esse objeto de botão.