Orientação a Objetos - Gil Eduardo de Andrade

Propaganda
Orientação a Objetos
Thread em Java
extends Thread / implements Runnable
Gil Eduardo de Andrade
Thread em Java
Introdução
• Threads são tarefas (atividades) que podem
ser criadas dentro um fluxo de código
principal (aplicativo) para serem executadas
em paralelo a ele;
• O conceito de thread permite a um aplicativo
dividir suas funcionalidades em módulos que
executam de forma independente;
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Thread em Java
Codificação
• O conceito de Thread pode ser implementado
em Java através de duas técnicas:
– Pela herança (extends) das funcionalidades da
classe Thread;
– Pela implementação da interface (implements)
Runnable;
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Thread Java
A classe “Thread”
• A classe Thread permite iniciar a execução de
uma nova tarefa através da invocação do
método start();
• Ao criarmos uma classe que estende da super
classe Thread é necessário declararmos e
implementarmos o método public void run();
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Thread Java
A classe “Thread”
• Dentro do método run() deve-se especificar o
código-fonte que deve ser executado pela
nova thread criada e iniciada pelo método
start();
• Quando precisamos implementar um
temporizador com uma thread utilizamos o
método sleep(int time) que permite pausar a
execução da thread em “time” milissegundos;
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Thread Java
Exemplo: “extends Thread”
Herda as funcionalidades da classe Thread
Invoca o construtor da classe Thread
Inicia a execução da Thread
Pausa a execução da Thread em 9 segundos
Invoca o código a ser executado pela Thread.
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Thread Java
A interface “Runnable”
• É possível criarmos uma thread, além de
estendendo a classe Thread, implementando a
interface Runnable;
• Nesse processo estamos um passo atrás do
anterior, pois nele é necessário declarar e
instanciar um objeto do tipo Thread;
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Thread Java
A interface “Runnable”
• Sendo assim, instanciamos o objeto, indicando
onde o método run() será implementado, já
que passamos ao construtor da classe Thread
o objeto da classe que contém o método
run(), após isso iniciamos a execução da
thread através da chamada do método start():
– Thread t = new Thread(this);
– t.start();
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Thread Java
Exemplo: “implements Runnable”
Implementa a interface Runnable
Especifica que esta classe tem o método run()
Instancia um objeto da classe Thread
Inicia a execução da Thread
Invoca o código a ser
executado pela Thread.
Pausa a execução da Thread
em 1 segundo
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Thread Java
Exemplo Execução: extends + implements
Executa uma thread para efetuar a contagem
do cronometro utilizando o conceito de
implementação da interface Runnable
Executa uma thread para gerar um relatório
em formato “.pdf” utilizando o conceito de
herança da super classe Thread
O código-fonte completo encontra-se disponível na seção de exemplos desta
aula.
Aula 21: Threads em Java: extends Thread / implements Runnable – Gil Eduardo de Andrade
Download