Applet或Java小應(yīng)用程序是一種在Web環(huán)境下,運(yùn)行于客戶端的Java程序組件。它也是1990年代中期,Java在誕生后得以一炮走紅的功臣之一。通常,每個(gè)Applet的功能都比較單一(例如僅用于顯示一個(gè)舞動(dòng)的Logo),因此它被稱作“小應(yīng)用程序”1。
Applet必須運(yùn)行于某個(gè)特定的“容器”,這個(gè)容器可以是瀏覽器本身,也可以是通過各種插件,或者包括支持Applet的移動(dòng)設(shè)備在內(nèi)的其他各種程序來(lái)運(yùn)行。與一般的Java應(yīng)用程序不同,Applet不是通過main方法來(lái)運(yùn)行的(參見Java的Hello World程序和Java Applet的Hello World程序)。在運(yùn)行時(shí)Applet通常會(huì)與用戶進(jìn)行互動(dòng),顯示動(dòng)態(tài)的畫面,并且還會(huì)遵循嚴(yán)格的安全檢查,阻止?jié)撛诘牟话踩蛩兀ɡ绺鶕?jù)安全策略,限制Applet對(duì)客戶端文件系統(tǒng)的訪問)。
以AWT方式撰寫一個(gè)顯示“Hello, world!”的Java applet。
import java.applet.Applet;
import java.awt.*;
// Applet code for the "Hello, world!" example.
// This should be saved in a file named as "HelloWorld.java".
public class HelloWorld extends Applet {
// This method is mandatory, but can be empty (i.e., have no actual code).
public void init() { }
// This method is mandatory, but can be empty.(i.e.,have no actual code).
public void stop() { }
// Print a message on the screen (x=20, y=10).
public void paint(Graphics g) {
g.drawString("Hello, world!", 20,10);
// Draws a circle on the screen (x=40, y=30).
g.drawArc(40,30,20,20,0,360);
}
}
上述Java的Code編譯成HelloWorld.class,再透過下述網(wǎng)頁(yè)使用。
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<TITLE>HelloWorld_example.html</TITLE>
</HEAD>
<BODY>
<H1>A Java applet example</H1>
<P>Here it is: <APPLET code="HelloWorld.class" WIDTH="200" HEIGHT="40">
This is where HelloWorld.class runs.</APPLET></P>
</BODY>
</HTML>
注釋
Applet是由英語(yǔ)“應(yīng)用程序”Application的縮寫App和代表“小”的后綴let組成。Servlet(Server-let)、MIDlet(Mobile Information Device-let)和JSP中的Scriptlet的命名也是基于同樣原理。