Vídeo: Java #7 - Criando Interface Gráfica 2024
Para os tópicos que desencadeiam eventos de contagem regressiva específicos, como inundar a plataforma de inicialização, iniciar os eventos e levantar, você pode criar outra classe Java chamada LaunchEvent. Esta classe usa outra técnica para criar e iniciar threads - uma que requer mais algumas linhas de código, mas é mais flexível.
O problema com a criação de uma classe que estende a classe Thread é que uma classe pode ter uma superclasse. E se preferir que seu objeto de tópico prorrogue alguma outra classe? Nesse caso, você pode criar uma classe que implemente a interface Runnable em vez de estender a classe Thread.
A interface Runnable marca um objeto que pode ser executado como um thread. Ele tem apenas um método, executar, que contém o código executado no tópico. (A classe Thread propriamente dita executa Runnable, razão pela qual a classe Thread possui um método de execução.)
Para usar a interface Runnable para criar e iniciar um tópico, você deve fazer o seguinte:
-
Criar uma classe que implemente Runnable.
-
Forneça um método de execução na classe Runnable.
-
Crie uma instância da classe Thread e passe seu objeto Runnable para o construtor como um parâmetro.
É criado um objeto Thread que pode executar sua classe Runnable.
-
Chamar o método de início do objeto Thread.
O método de execução do seu objeto Runnable é chamado e é executado em um segmento separado.
As duas primeiras etapas são fáceis. O truque é na terceira e quarta etapas, porque você pode completá-los de várias maneiras. Aqui está uma maneira, assumindo que sua classe Runnable é chamada RunnableClass:
RunnableClass rc = new RunnableClass (); Thread t = new Thread (rc); t. começar();
Os programadores Java gostam de ser o mais conciso possível, então você costuma ver esse código comprimido para algo mais como
Thread t = new Thread (novo RunnableClass ()); t. começar();
ou mesmo apenas:
novo tópico (novo RunnableClass ()). começar();
Esta versão de uma única linha funciona - desde que você não precisa acessar o objeto de thread mais tarde no programa.