All applets have the following four methods:
public void init();
public void start();
public void stop();
public void destroy();
They have these methods because their superclass, java.applet.Applet
, has these methods. (It has others too,
but right now I just want to talk about these four.)
In the superclass, these are simply do-nothing methods. For example,
public void init() {}
Subclasses may override these methods to accomplish certain
tasks at certain times. For instance, the init()
method is a good place to read parameters that were passed to the
applet via <PARAM>
tags because it's called
exactly once when the applet starts up. However, they do not have
to override them. Since they're declared in the superclass, the Web
browser can invoke them when it needs to without knowing in advance
whether the method is implemented in the superclass or the
subclass. This is a good example of polymorphism.