Thread

3 respostas
G
package Concurrency;

public class MyThread extends Thread{
	
	MyThread(){}

	MyThread(Runnable r){super(r);}

	public void run(){System.out.print("Inside thread");}

	public static void main(String[] args){
		new MyThread().start();
		new MyThread(new MyRunnable()).start();
		new Thread(new MyRunnable()).start();
	}
}


class MyRunnable implements Runnable{
	public void run(){System.out.print("Inside runnable");}
}

Alguém ai me explica porque ao passar o MyRunnable para o MyThread ele não executa o run() do MyRunnable?

[]s
Gunnar

3 Respostas

G

Já entendi :slight_smile:

me corrijam se eu estiver errado…

É porque eu sobreescrevi o método run da classe Thread e não chamei o run do runnable , o que deve ser feito no método run() da classe Thread. Quando eu comento o método run() da classe MyThread ele imprime Inside runnable

[]s
Gunnar

J2Alex

É exatamente isso.

Mychely

é isso mesmo.
certinho. :lol:

Criado 19 de novembro de 2007
Ultima resposta 19 de nov. de 2007
Respostas 3
Participantes 3