java applet小程序


      JavaApple:就是用java語言編寫的小應用程序,可以直接嵌入到網頁中,並能夠產生特殊的效果。包含Applet的網頁被稱為Java-powered頁,可以稱其為Java支持的網頁。當用戶訪問這樣的網頁時, Applet被下載到用戶的計算機上執行,但前提是用戶使用的是支持Java的網絡l瀏覽器。由於Applet是在用戶的計算機上執行的,因此它的執行速度不受網絡帶寬或者Modem存取速度的限制。用戶可以更好地欣賞網頁上Applet產生的多媒體效果。在Java Applet中,可以實現圖形繪制,字體和顏色控制,動畫和聲音的插入,人機交互及網絡交流等功能。 Applet還提供了名為抽象窗口工具箱(Abstract Window Toolkit, AWT)的窗口環境開發工具。 AWT利用用戶計算機的GUI元素,可以建立標准的圖形用戶界面,如窗口、按鈕、滾動條等等。目前,在網絡上有非常多的Applet范例來生動地展現這些功能,讀者可以去調閱相應的網頁以觀看它們的效果。

Applet的工作原理:含有Applet的網頁的HTLM文件代碼中部帶有<applet> 和</applet>這樣一對標記,當支持Java的網絡瀏覽器遇到這對標記時,就將下載相應的小應用程序代碼並在本地計算機上執行該Applet。

帶有一個Applet的主頁
<html>
<title> An Example Homepage </title>
<h1> Welcome to my homepage! </h1>
This is an example homepage, you can see an applet in it. 
<p> <br>
<apple code="Example.class" width = 300 height=300>
<param name = img value = "example.gif">
</applet>
</html>
 
 
上面這個例子就是一個簡單主頁的HTML文件代碼。代碼第五行中的<p>,是為了確保Applet出現在新的一行,若沒有它, Applet將會緊接着上一行的最后一個單詞出現。代碼第六、七兩行是關於Applet的一些參數。其中第六行是必需的Applet參數,定義了編譯后的包含Applet字節碼的文件名,后綴通常為“.class”;和以像素為單位的Applet的初始寬度與高度。第七行則是附加的Applet參數,它由一個分離的標記來指定其后的名稱和值,在這里是img的值為“example.gif’,它代表了一個圖形文件名。
Applet的下載與圖形文件一樣需要一定的時間,若干秒后它才能在屏幕上顯示出來。等待的時間則取決於Applet的大小和用戶的網絡連接的速度。一旦下載以后,它便和本地計算機上的程序以相同的速度運行了。
Applet在用戶的計算機上執行時,還可以下載其它的資源,如聲音文件、圖像文件或更多的Java代碼,有些Applet還允許用戶進行交互式操作。但這需要重復的鏈接與下載,因此速度很慢,這是一個亟待解決的問題,可以想到的一個好辦法是采用類似高速緩存的技術,將每次下載的文件都臨時保存在用戶的硬盤上,雖然第一次使用時花的時間比較多,但當再次使用時,只需直接從硬盤上讀取文件而無需再與Internet連接,便可以大大提高性能了。
 
       applet的生命周期
Applet 類中的四個方法給你提供了一個框架,你可以再該框架上開發小程序:
  • init: 該方法的目的是為你的 Applet 提供所需的任何初始化。在 Applet 標記內的 param 標簽被處理后調用該方法。
  • start: 瀏覽器調用 init 方法后,該方法被自動調用。每當用戶從其他頁面返回到包含 Applet 的頁面時,則調用該方法。
  • stop: 當用戶從包含 Applet 的頁面移除的時候,該方法自動被調用。因此,可以在相同的 Applet 中反復調用該方法。
  • destroy: 此方法僅當瀏覽器正常關閉時調用。因為 Applet 只有在 HTML 網頁上有效,所以你不應該在用戶離開包含 Applet 的頁面后遺漏任何資源。
  • paint: 該方法在 start() 方法之后立即被調用,或者在 Applet 需要重繪在瀏覽器的時候調用。paint() 方法實際上繼承於 java.awt

       如果你將要寫客戶端程序,你需要學習WEB的小應用程序(applet),必需掌握GUI設計的思想和方法,以及桌面程序的SWING,AWT, SWT。你還應該對UI部件的JAVABEAN組件模式有所了解。JAVABEANS也被應用在JSP中以把業務邏輯從表現層中分離出來。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM