Previous | Next | Trail Map | Writing Applets | Overview of Applets


Methods for Milestones

public class Simple extends Applet {
    . . .
    public void init() { . . . }
    public void start() { . . . }
    public void stop() { . . . }
    public void destroy() { . . . }
    . . .
}
The Simple applet, like every other applet, features a subclass of the Applet class. (More complex applets sometimes consist of more than one custom class, but they're always controlled by an instance of an Applet subclass.) The Simple class overrides four Applet methods so that it can respond to major events:

init()
To initialize the applet each time it's loaded (or reloaded).
start()
To start the applet's execution, such as when the applet's loaded or when the user revisits a page that contains the applet.
stop()
To stop the applet's execution, such as when the user leaves the applet's page or quits the browser.
destroy()
To perform a final cleanup in preparation for unloading.

Not every applet needs to override every one of these methods. Some very simple applets override none of them For example, the doesn't override any of these methods, since it doesn't do anything except draw itself. The "Hello World" applet just displays a string once, using its paint() method. (The paint() method is described on the following page.) Most applets, however, do more.

The init() method is useful for one-time initialization that doesn't take very long. For example, it's a great place to load images, since the Java-provided image loading methods return immediately after starting the asynchronous transfer of image data.

Every applet that does something after initialization -- changes its onscreen appearance, for example -- must override the start() method. The start() method either performs the applet's work or (more likely) sets up a helper object to perform the work.

Most applets that override start() should also override the stop() method. The stop() method should suspend the applet's execution, so that it doesn't take up system resources when the user isn't viewing the applet's page. For example, an applet that displays animation should stop trying to draw the animation when the user isn't looking at it.

Many applets don't need to override the destroy() method, since their stop() method (which is called before destroy()) does everything necessary to shut down the applet's execution. However, destroy() is available for applets that need to release additional resources.

The init(), start(), stop(), and destroy() methods are discussed and used throughout this tutorial. For more information, you can also refer to the Applet API reference page.


Previous | Next | Trail Map | Writing Applets | Overview of Applets