Per quanto riguarda i punti 1 e 5: è chiaro che ho scritto l'applet con superficialità! Era solo un esempio .

Poi per i punti 3 e 4: ok, è tutto chiaro!

Ma per il secondo ho una domanda:
va bene comunque se decidessi di creare una classe che estende "Thread" e quindi poi nel momento opportuno istanziare l'oggetto della classe e far partire il thread nel seguente modo?

codice:
//in init()

Thr t = new Thr(5);
t.start();


/***************/


class Thr extends Thread
{
      private int param;

      public Thr(int param){
        this.param=param;
      }

      public void run()
      { ... }
}
E' la stessa cosa oppure no?