Threads are needed when you want to perfom actions
over and over again.
We want to show the current time and update that
// We need Date to get the current time.
// Implement Runnable, this will make it possible
// to call the run method when activated.
public class ThreadExample
extends Applet implements Runnable
// Define your thread.
// This textfield will show the time.
// Date will give us the current hours, minutes and seconds
// This variable will remain true for as long
// we want the thread to run.
boolean running = true;
public void init()
// a standard layout to place just one textfield
clockField = new TextField();
// Create the thread.
clockThread= new Thread(this);
// and let it start running
// Very important. You do not want your thread to keep running when
// the applet is deactivated (eg. user left page)
public void destroy()
// will cause thread to stop looping
running = false;
// destroy it.
clockThread = null;
// The method that will
be called when you have a thread.
// You always need this
when you implement Runnable (use a thread)
public void run()
// loop until told to stop
// Construct the current date.
date = new Date();
// Get the hours, minutes and hours
String time = date.getHours()+":"+date.getMinutes()+":"+date.getSeconds();
// Put that result in the textfield
//Now the reason for threads
// Wait 500milliseconds before continuing
catch (InterruptedException e)
// he has wait and will now restart his actions.
Be cautious when using threads, make sure to
end them sometime and not to let them run too
fast. When threads are used to time on-screen
drawing things could slow down