applet是一種Java程式。它一般運作在支援Java的Web浏覽器内。因為它有完整的Java API支援,是以applet是一個全功能的Java應用程式。
如下所示是獨立的Java應用程式和applet程式之間重要的不同:
Java中applet類繼承了 java.applet.Applet類
Applet類沒有定義main(),是以一個 Applet程式不會調用main()方法,
Applets被設計為嵌入在一個HTML頁面。
當使用者浏覽包含Applet的HTML頁面,Applet的代碼就被下載下傳到使用者的機器上。
要檢視一個applet需要JVM。 JVM可以是Web浏覽器的一個插件,或一個獨立的運作時環境。
使用者機器上的JVM建立一個applet類的執行個體,并調用Applet生命周期過程中的各種方法。
Applets有Web浏覽器強制執行的嚴格的安全規則,applet的安全機制被稱為沙箱安全。
applet需要的其他類可以用Java歸檔(JAR)檔案的形式下載下傳下來。
Applet的生命周期
Applet類中的四個方法給你提供了一個架構,你可以再該架構上開發小程式:
init: 該方法的目的是為你的applet提供所需的任何初始化。在Applet标記内的param标簽被處理後調用該方法。
start: 浏覽器調用init方法後,該方法被自動調用。每當使用者從其他頁面傳回到包含Applet的頁面時,則調用該方法。
stop:當使用者從包含applet的頁面移除的時候,該方法自動被調用。是以,可以在相同的applet中反複調用該方法。
destroy: 此方法僅當浏覽器正常關閉時調用。因為applets隻有在HTML網頁上有效,是以你不應該在使用者離開包含Applet的頁面後遺漏任何資源.
paint: 該方法在start()方法之後立即被調用,或者在applet需要重繪在浏覽器的時候調用。paint()方法實際上繼承于java.awt。
"Hello, World" Applet:
下面是一個簡單的Applet程式HelloWorldApplet.java:
import java.applet.*;
import java.awt.*;
public class HelloWorldApplet extends Applet
{
public void paint (Graphics g)
{
g.drawString ("Hello World", 25, 50);
}
}
這些import語句将以下類導入到我們的applet類中:
java.applet.Applet.
java.awt.Graphics.
沒有這些import語句,Java編譯器就識别不了Applet和Graphics類。
Applet 類
每一個applet都是java.applet.Applet 類的子類,基礎的Applet類提供了供衍生類調用的方法,以此來得到浏覽器上下文的資訊和服務。
這些方法做了如下事情:
得到applet的參數
得到包含applet的HTML檔案的網絡位置
得到applet類目錄的網絡位置
列印浏覽器的狀态資訊
擷取一張圖檔
擷取一個音頻片段
播放一個音頻片段
調整此 applet 的大小
除此之外,Applet類還提供了一個接口,該接口供Viewer或浏覽器來擷取applet的資訊,并且來控制applet的執行。
Viewer可能是:
請求applet作者、版本和版權的資訊
請求applet識别的參數的描述
初始化applet
銷毀applet
開始執行applet
結束執行applet
Applet類提供了對這些方法的預設實作,這些方法可以在需要的時候重寫。
"Hello,World"applet都是按标準編寫的。唯一被重寫的方法是paint方法。
Applet的調用
applet是一種Java程式。它一般運作在支援Java的Web浏覽器内。因為它有完整的Java API支援,是以applet是一個全功能的Java應用程式。(編輯:雷林鵬 來源:網絡)