INIT()

Il metodo init() è il primo ad essere chiamato. Questo metodo viene chiamato una sola volta durante la fase di esecuzione dell’applet.

Ad esempio mostriamo il metodo init() dell’applet Animazione:

 

public void init() {

// inizializza le variabili

 // acquisisci i parametri dell’applet

}

 

START()

Il metodo start() viene chiamato dopo init(), anche per riavviare un’applet dopo che è stata interrotta. Mentre init() viene chiamato una sola volta (la prima volta che un’applet viene caricata), start() viene chiamato ogni volta che sullo schermo viene visualizzato un documento HTML di un’applet. Quindi, se un’utente abbandona una pagina web e torna indietro, l’applet riprende l’esecuzione da start().

Ad esempio mostriamo il metodo start() dell’applet Animazione:

 

public void start() {

// avvia l’animazione

}

  

PAINT()

Il metodo paint() viene chiamato ogni volta che l’output di un’applet deve essere “ridisegnato”, situazione che può verificarsi per vari motivi. Per esempio, la finestra in cui viene eseguita l’applet potrebbe essere sovrascritta da un’altra finestra e poi potrebbe riapparire. Oppure, la finestra dell’applet potrebbe essere ridotta ad icona e poi essere ripristinata. paint() viene chiamato anche quando inizia l’esecuzione dell’applet. Indipendentemente dalla causa, ogni volta che l’applet deve visualizzare nuovamente l’output, viene chiamato paint(). Il metodo paint() ha un parametro di tipo Graphics contenente il contesto grafico, che descrive l’ambiente grafico in cui viene eseguita l’applet. Questo contesto viene utilizzato ogni volta che viene richiesto l’output dell’applet.

Ad esempio mostriamo il metodo paint() dell’applet Animazione:

 

public void paint(Graphics g) {

// imposta il colore di sfondo della finestra

// visualizza l’immagine

}

  

STOP()

Il metodo stop() viene chiamato quando un browser web abbandona il documento HTML contenente l’applet, per esempio, quando si sposta in un’altra pagina. Quando viene chiamato stop(), probabilmente l’applet è in esecuzione. Occorre utilizzare stop() per interrompere i thread che non è necessario eseguire quando l’applet non è visibile. È possibile riavviarli quando viene chiamato start(), se l’utente ritorna a quella pagina.

Ad esempio mostriamo il metodo stop() dell’applet Animazione:

 

public void stop() {

// ferma l’animazione

}

 

DESTROY()

Il metodo destroy() viene chiamato quando l’ambiente determina che l’applet deve essere eliminata completamente dalla memoria. A questo punto, occorre liberare tutte le risorse che potrebbero essere utilizzate dall’applet. Il metodo stop() viene sempre chiamato prima di destroy().

 

UPDATE()

Il metodo update() (definito dall’AWT) viene chiamato quando l’applet richiede che venga visualizzata nuovamente una parte della sua finestra. La versione di default di update() riempie l’applet con il colore di sfondo di default, poi chiama paint().

 

RIDEFINIZIONE DI UPDATE()

Per come è fatta la versione di default di update(), se si riempie lo sfondo utilizzando un colore diverso in paint(), l’utente visualizza un “flash” dello sfondo di default ogni volta che viene chiamato update(), ossia ogni volta che la finestra viene rivisualizzata. Per evitare questo problema, è possibile ridefinire il metodo update() affinché esegua tutte le attività di visualizzazione necessarie e poi occorre far sì che paint() chiami semplicemente update(). Quindi, in alcuni casi nell’applet Animazione abbiamo ridefinito paint() ed update() nel seguente modo:

 

public void update(Graphics g) {

paint(g);

}

 

public void paint(Graphics g) {

// visualizza la finestra

}