Duvida com setPriority()[resolvido]

ae pessoal fiquei na duvida pq esse codigo nao compila…

class Mpriot implements Runnable{
	public void run(){
		System.out.println(Thread.currentThread().getName());	
	}
	public static void main(String args[]){
		Mpriot mp = new Mpriot();
		Mpriot mp2 = new Mpriot();
		Thread th = new Thread(mp);
		Thread th2 = new Thread(mp);
	th.setPriority(MAX_PRIORITY);
	th2.setPriority(MIN_PRIORITY);
		th2.start();
		th.start();
	}
}

nao consigo visualizar o erro na sintaxe… quem puder dar esse help :smiley:

As variaveis estáticas MAX_PRIORITY e MIN_PRIORITY são da classe thread, logo

 	th.setPriority(Thread.MAX_PRIORITY);
 	th2.setPriority(Thread.MIN_PRIORITY);

Até…

e pq esse roda tranquilo?

class PrioT extends Thread{
	public void run(){
		System.out.println(Thread.currentThread().getName());
	}
	public static void main(String args[]){
		PrioT p = new PrioT();
		PrioT p1 = new PrioT();
			p.setPriority(2);
			p1.setPriority(MAX_PRIORITY);
				p.setName("neto");
				p1.setName("lopes");			
		p.start();
		p1.start();
		
	}
}

:?:

Por que ai sua classe estende Thread

nesse vc extends da classe Thread então vc possui as variáveis “localmente”, pois estão na msm classe, na classe anterior vc implementava Runnable…

acho que é isso certo ?
:wink:

po galera valeu entao quanto implementar Runnable e quiser definir uma prioridade para minha thread(que nao eh garantido a execucao) uso Thread.MAX_PRIORITY mais se extender é so mandar direto.hehe essa nao sabia mesmo… n

obrigado mesmo :smiley: