aplet jako wątek

0

witam, czy aplet można odpalić jako wątek? Mam taki aplet, ale nie wiem, w którym miejscu umieścić metodę run, czy run ma wywoływać init? Z tego co zrozumiałem, init działa mniej więcej jak... konstruktor...

import java.net.InetAddress;
import javax.swing.JApplet;



public class Apletklient extends JApplet  {
   public void Apletklient() {   
   }; 
    public void init() {   
       try{
        String s = InetAddress.getLocalHost().getHostName();
        klient2 k2= new klient2(s,15000);
        Thread t = new Thread(k2);
        t.start();
         setContentPane(k2);
       }
       catch(Exception e)
       {}
    }
}
0

A jaki miało by to cel?

0

Czysto akademicki. To program na zaliczenie.

0

Ok. Samego apletu nie odpalisz jako wątku ponieważ nie ma takiej możliwości. Aplet działa w ramach własnego wątku uruchamianego przez plugin javy w przeglądarce.
Aplety mają trochę inny cykl życia niż zwykle aplikacje. Nie możesz zarządzać całym cyklem życia apletu. Na przyklad nie tworzysz instancji apletu, bo robi to za ciebie plugin. Działa to w następujący sposób:

  • ładowana jest strona z serwera, następuje stworzenie obiektu multimedialnego i uruchomienie pluginu
  • plugin tworzy instancję apletu i uruchamia metodę init().
  • działanie użytkownika
  • zamykamy stronę
  • plugin uruchamia metodę destroy() i niszczy obiekt.

Jeżeli chcesz używać wątków aplecie to można tworzyć i uruchamiać w init(). Mogą one odpowiadać za np. komunikację z serwerem.

0

Ale masz z apletu odpalić inny wątek, np. żeby umieścić w nim jakąś animację. W ten sposób GUI jest aktywne, i użytkownik może sterować animacją.

1 użytkowników online, w tym zalogowanych: 0, gości: 1