java的两种运行方式Applet和Application你真的懂吗
對兩者的簡介
他們是java的兩種程序,能夠獨立運行的程序稱為Java應用程序也包含我們正常寫的java文件所生成的可執行程序(Application)其運行和普通的java文件相同。Java語言還有另外一種程序——Applet程序。Applet程序(也稱Java小程序)是運行于各種網頁文件中,用于增強網頁的人機交互、動畫顯示、聲音播放等功能的程序,Applet類是瀏覽器類庫中最為重要的類,同時也是所有java小應用程序的基本類。Apple類中只有一種格式的構造方法public Apple(),此種方法用來創建一個Apple類的實例。因此,在編寫Applet程序時,首先必須引入java.applet.Applet包,Applet程序主要繼承java.applet包中的Applet類并重寫paint()方法。
Applet的介紹
| init() | 自動調用,init()方法是Applet運行的起點。當啟動Applet程序時,系統首先調用此方法,以執行初始化任務。 |
| start() | start()方法是表明Applet程序開始執行的方法。當含有此Applet程序的Web頁被再次訪問時調用此方法。因此,如果每次訪問Web頁都需要執行一些操作的話,就需要在Applet程序中重載該方法。在Applet程序中,系統總是先調用init()方法,后調用start()方法。 |
| stop() | stop()方法使Applet停止執行,當含有該Applet的Web頁被其他頁代替時也要調用該方法。 |
| destroy() | destroy()方法收回Applet程序的所有資源,即釋放已分配給它的所有資源。在Applet程序中,系統總是先調用stop()方法,后調用destroy()方法。 |
| paint(Graphics g) | paint(Graphics g)方法可以使Applet程序在屏幕上顯示某些信息,如文字、色彩、背景或圖像等。參數g是Graphics類的一個對象實例,實際上可以把g理解為一個畫筆。對象g中包含了許多繪制方法,如drawstring()方法就是輸出字符串。 |
| repaint() | repaint()方法的功能是,程序首先清除paint()方法以前所畫的內容,然后再調用paint()方法。 |
值得注意的是,在Applet類中沒有提供init()、start()、stop()、destroy()和paint()方法的任何實現,且它們都是被瀏覽器或Appletviewer(一種小程序瀏覽器存在于JDK中用于執行html文件)調用的,所以這幾個方法要完成的功能應由編程人員自行編制。
2.java為了防范惡意程序的攻擊,保護本地主機對Applet做出安全限制
(1)Applet不能運行本地任何可執行程序
(2)禁止加載本地的庫和方法
(3)禁止讀寫本地計算機的文件系統
(4)禁止提供Applet之外的任何主機建立網絡連接
(5)不能讀取某些系統信息
(6)由一個Applet彈出的窗口外觀上與與一個Application彈出的窗口不同,Applet彈出的窗口中會有警告提示信息,幫助用戶區分Applet窗口與可信的Application的窗口
這里注意Applet只能讀取有限的系統信息,并不是一點不能讀取
Applet和Application的區別
(1)運行方式不同。Java Applet程序不能單獨運行,它必須依附于一個用HTML語言編寫的網頁并嵌入其中,通過與Java兼容的瀏覽器來控制執行。 Java Application是完整的程序,可以獨立運行,只要有支持Java的虛擬機,它就可以獨立運行而不需要其他文件的支持。
(2)運行工具不同。運行Java Applet程序的解釋器不是獨立的軟件,而是嵌在瀏覽器中作為瀏覽器軟件的一部分。Java Application程序被編譯以后,用普通的Java 解釋器就可以使其邊解釋邊執行,而Java Applet必須通過網絡瀏覽器或者Applet觀察器才能執行。
(3)程序結構不同。每個Java Application程序必定含有一個并且只有一個main方法,程序執行時,首先尋找main方法,并以此為入口 點開始運行。含有main方法的那個類,常被稱為主類,也就是說,Java Application程序都含有一個主類。而Applet程序則沒有含 main方法的主類,這也正是Applet程序不能獨立運行的原因。盡管Applet沒有含main方法的主類,但Applet一定有一個 從 java.applet.Applet派生的類,它是由Java系統提供的。
(4)Java Applet程序可以直接利用瀏覽器或AppletViewer提供的圖形用戶界面,而Java Application程序則必須另外書寫專用代碼來營建自己的圖形界面。
(5)受到的限制不同。Java Application程序可以設計成能進行各種操作的程序,包括讀/寫文件的操作,但是 Java Applet 對站 點的磁盤文件既不能進行讀操作,也不能進行寫 操作。然而,由于Applet的引入,使Web頁面具有動態多媒體效果和可交互性能,這使由名為超文本、實為純文本的HTML語言編寫成的Web頁面真正具有了超文本功 能,不但可以顯示文本信息,而且還可以有各種圖片效果和動態圖形效果,從而使頁面顯得生動美麗;另外,Applet使Web頁面增加了按鈕等功能,從而增 加了交互性。
總結
以上是生活随笔為你收集整理的java的两种运行方式Applet和Application你真的懂吗的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浅谈java内存分析和垃圾收集器
- 下一篇: 三万字的java I/O流基础总结看完