1. 程式人生 > >Java Applet基礎

Java Applet基礎

  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應用程式。(編輯:雷林鵬 來源:網路)