Estou desenvolvendo o jogo um contra cem e estou com duvida no seguinte como se cria uma thread , tenho um codigo mas não entendo
porque é necessario uma classe para usar a thread???
codigo :
class MyThread extends Thread {
int count;
MyThread() {
count = 0;
}
public void run() {
System.out.println("Minha Thread Iniciou.");
try {
do {
Thread.sleep(1000);
System.out.println("Minha Thread, contador == " + count);
count++;
} while (count < 5);
} catch (InterruptedException exc) {
System.out.println("Thread Parada");
}
System.out.println("Thread Acabou.");
}
Então poderiam me explicar este codigo passo a passo??
e porque deste codigo para chamar a classe não poderia executar direto
public class Main {
public static void main(String args[]) {
System.out.println("Thread Principal Inicio");
MyThread mt = new MyThread();
mt.start();
do {
System.out.println("Thread Principal");
try {
Thread.sleep(1000);
} catch (InterruptedException exc) {
System.out.println("thread principal Interrompida");
}
} while (mt.count != 5);
System.out.println("thread principal terminada");
}
}
Não entendo o porque do while e porque ter duas coisas para executar uma thread???