Introduzione a Java ed Eclipse - 3 - 24

# Animare la palla - Il metodo run e stop

- Dovremo poi scrivere il metodo public void run(); che esegua il movimento.
- Questo metodo dovrà fare un ciclo che modifichi le coordinate della palla, ad una velocità costante (diciamo 20 volte al secondo) e calcoli il rimbalzo sui bordi.
- Occorre notare che il metodo public void run(); non viene invocato solo dal thread, ma anche dal processo principale.
- Inoltre occorre prevedere di interrompere il ciclo quando premiamo fine nella finestra, altrimenti il programma non termina.
- Per questo motivo quindi, il nostro ciclo dovrà verificare che il thread corrente corrisponda ad animazione: while (Thread.currentThread() == animazione)
- Per interrompere il ciclo quindi, nel metodo public void stop(); non ci servirà altro che mettere a null l'attributo animazione e il ciclo terminerà.
- Per introdurre una pausa che regoli la velocità del ciclo utilizzeremo il metodo statico Thread.sleep(long millis);
- Questo metodo può inviare un'eccezione se la pausa viene interrotta anzitemtpo. Inseriremo quindi l'invocazione in un blocco try/catch dove la catch non farà alcuna azione.

© Ing. Stefano Salvi - released under FDL licence