Applet 是以 Java 編寫、嵌入網頁、由瀏覽器下載至本地執行的小型應用程式。與一般應用程式(從 main() 啟動)不同,Applet 由瀏覽器/ appletviewer 管理生命週期,透過 <applet> 標籤嵌入 HTML。優勢:修改 HTML 參數即可改變行為,無需重新編譯 Java 代碼;配合動態產生 HTML,可靈活控制網頁效果。
| 方法 | 觸發時機 | 用途 | Delphi 類比 |
|---|---|---|---|
init() | Applet 載入時,僅執行一次 | 初始化資源、讀取參數 | OnCreate |
start() | init() 後、每次視窗重新激活 | 啟動動畫、執行緒、音訊 | OnShow |
stop() | 離開頁面、最小化 | 釋放資源、暫停執行緒 | OnClose |
destroy() 為第四方法,卸載時調用,用於最終清理。
import java.applet.Applet;
import java.awt.Graphics;
public class HelloWorld extends Applet {
String title;
public void init() { title = "Hello World"; }
public void paint(Graphics g) { g.drawString(title, 50, 20); }
}
<html><body>
Here comes my first applet:<br>
<applet code="HelloWorld.class" width="650" height="500"></applet>
</body></html>
將 .class 與 HTML 置同目錄,編譯後雙擊 HTML 或執行 appletviewer test.htm 即可運行。
public class StartStop extends Applet {
StringBuffer msg = new StringBuffer();
public void init() { msg.append("Init done... "); }
public void start() { msg.append("Started... "); }
public void stop() { msg.append("Stopped... "); }
public void paint(Graphics g) { g.drawString(msg.toString(), 150, 50); }
}
在頁面切換、最小化/還原視窗時觀察字串變化,直觀理解生命週期。

Java AWT 提供豐富 GUI 元件,但 JDK 非視覺化 RAD 工具,佈局需手寫代碼。Panel 相當於 Delphi TPanel,用於分組與精確定位。
int i; // 直接配置 2-8 bytes 記憶體存儲數值
Date myBirth; // 僅配置參考變數(4/8 bytes),值為 null
Date myBirth = new Date(); // 配置物件記憶體,回傳參考指派給變數
new 才真正配置物件記憶體並回傳參考(位址)。University u2 = u; → u2 與 u 指向同一記憶體位址。