这些Java教程是为JDK 8编写的。本页面中描述的示例和实践不利用后续版本中引入的改进,并且可能使用不再可用的技术。
请参阅Java语言更改以了解Java SE 9及其后续版本中更新的语言功能的摘要。
请参阅JDK发布说明以获取有关所有JDK版本的新功能、增强功能以及删除或弃用选项的信息。
一个applet可以通过以下方式对主要事件做出反应:
本节介绍了一个新的applet,Simple,它使用了所有这些方法。与Java应用程序不同,applet不需要实现一个main方法。
下面是Simple applet的代码。
下面是Simple applet的源代码。当applet在其生命周期中遇到重要的里程碑时,例如用户首次访问包含applet的页面时,该applet会显示一个描述性字符串。
import java.applet.Applet;
import java.awt.Graphics;
//不需要扩展JApplet,因为我们不添加任何组件,只是绘制。
public class Simple extends Applet {
StringBuffer buffer;
public void init() {
buffer = new StringBuffer();
addItem("正在初始化... ");
}
public void start() {
addItem("正在启动... ");
}
public void stop() {
addItem("正在停止... ");
}
public void destroy() {
addItem("正在准备卸载...");
}
private void addItem(String newWord) {
System.out.println(newWord);
buffer.append(newWord);
repaint();
}
public void paint(Graphics g) {
//在applet的显示区域周围绘制一个矩形。
g.drawRect(0, 0,
getWidth() - 1,
getHeight() - 1);
//在矩形内部绘制当前字符串。
g.drawString(buffer.toString(), 5, 15);
}
}
Applet类,而不是Swing的JApplet类,因为Swing组件不需要添加到这个applet中。
当applet被加载时,您应该看到文本“正在初始化... 正在启动...”。当加载一个applet时,会发生以下情况:
Applet子类)的一个实例。当用户离开页面时,例如去其他页面,浏览器会停止并销毁Applet。Applet的状态不会被保留。当用户返回页面时,浏览器会初始化并启动一个新的Applet实例。
当您刷新或重新加载浏览器页面时,当前的Applet实例会停止并销毁,并创建一个新的实例。
当用户退出浏览器时,Applet有机会在浏览器关闭之前停止自身并执行最后的清理工作。
下载简单Applet示例的源代码以进一步进行实验。