介紹
HotJava是一種WWW(World Wide Web)瀏覽器,也是完全用Java語言編寫的主要面向最終用戶的套用。開發者將其產品起名"HotJava(熱咖啡)"的目的也許是想讓人們在使用HotJava時像喝一杯熱氣騰騰的咖啡那樣適意、輕鬆。
Java的醞釀始於1990年,正式推出是在1995年的5月,HotJava瀏覽器則是與Java語言同期推出的,它是第一個基於Java語言及其運行系統而建立的套用。HotJava不僅充分顯示了Java語言環境的威力,而且為在更複雜、離散、異構的Internet網上進行分散式Java
編程提供了一個理想的平台。
安全性表現
HotJava本身帶有一系列的實用工具,為用戶提供了高度的安全性。它的安全性表現在以下兩級上
第一級:
Java語言解釋器HotJava的第一級安全性來自Java語言自身的特性。其安全性表現在以下幾個方面: ·在使用Java語言編寫應用程式時,在需要進行大量的編譯時和運行時進行二級檢查,從而減少了開發人員的出錯機會; ·Java用運行時間系統來管理用戶的記憶體,在
記憶體管理模組中,語言基本上沒有
指針及指針的相關算法,這樣,
用戶程式不會有指針懸空、
記憶體溢出和記憶體冗餘的現象發生; ·在Java的運行時間系統中,內置了
防病毒和損害檔案系統的保護機制,這樣即使從Internet網上
卸載或者修改Java應用程式,最終用戶也是非常安全的; ·Java禁止未授權的代碼對Java程式進行干預,因此保證了程式的安全性。 當代碼模組被移植入HotJava中時,它實際上並不知道代碼模組是否具有Java語言規則帶來的安全性,因為本地的Java語言
編譯器不可能產生這種安全性。移植的代碼由一系列檢查所控制,開始是直接測試代碼的格式是否正確,最後是由識別器進行一系列一致性檢查。實際上,HotJava的一級安全性可以說是Java語言環境安全性的繼承。
第二級:
高層協定這一級安全性基本保證了界面級不會受到侵犯,它在系統的較高層實現了保護機制。例如檔案訪問初始化時,產生一個
訪問控制表,該控制表負責對移植代碼形成(或由其衍生)檔案的讀/寫訪問實施控制。這些
訪問控制表的預設值要求非常嚴格,如果一段移植代碼試圖去訪問未被允許訪問的檔案,診斷箱允許用戶來判定是否讓其作指定的訪問。
HotJava的特點
在使用第一代
瀏覽器時,用戶需要知道有關Internet數據格式、通訊協定以及硬體線路連線方面的知識,有了HotJava以後,情況就大不相同了。它可以將不同的數據格式協調起來,並可隨時通過網路添加新的檔案格式,用戶無需知道各種通訊協定的內容。因此,與第一代瀏覽器相比,HotJava瀏覽器有幾個重要特點:
1.
動態伸縮性HotJava可以動態伸縮,它可以從網路上的任何一個地方隨意卸載Java應用程式(applets),並在用戶的本地客戶機上運行。而且,HotJava增加了可將
靜態文檔變換為動態套用的動態特性,從而擴展了瀏覽功能。它在網路上的瀏覽技術取自Mosaic和其它瀏覽器產品。 動態性表現在以下三個方面:首先,內容是動態的。例如,用Java語言編寫一段程式,配以HotJava
應用程式接口,用於實現化學實驗的互動式仿真過程,結果使人們可以用HotJava瀏覽器通過網路輕而易舉地看到實驗的仿真變化情況,並且還能與其互動,而不只是一些文本的靜態圖像。而且,實現化學實驗呈活動狀態的代碼不包含可能損害系統的代碼,因為這部分代碼繼承了Java語言安全性和穩定性的特徵。 其次,類型是動態的,HotJava可以支持多種不同的對象類型,例如絕大多數Web瀏覽器支持一些
圖像格式的集合,如GIF、Xll pixmap、Xllbitmap,再遇到其它格式的圖像信息就無法直接進行處理;HotJava則不然,它可以隨意將代碼連線到新的顯示格式,每遇到新的類型,HotJava瀏覽器就對其自身進行修整,以動態地適應變化的格式。 協定也是動態的。Internet
主機進行通訊的協定是網路的關鍵部分,其中,HTTP是WWW通訊協定中最重要的一種,WWW中與文檔相關的部分被稱為URL,當前的Web瀏覽器支持內置HTTP協定。HotJava則不採取這種方法,它讓協定名與適當的協定句柄連線,這就使新的協定動態地協調起來。協定的動態協調性在Internet上有著特殊的意義,在通常情況下,如果用戶在多個具有不同協定的伺服器上訪問數據,用戶就需要多個瀏覽器。使用HotJava瀏覽器則是被賦予一個參數在一個目標上(URL)。如果協定句柄已經安裝,這種協定就直接可用,否則HotJava就搜尋一個本地系統作為URL的目標系統。
2.
更好的互動性HotJava帶來了更多的Web
瀏覽器的互動性,可將當前瀏覽器上的靜態數據顯示變換成
超文本的新型動態、動畫式、互動式的瀏覽系統,進行瀏覽的開發人員只需擊打一下按鍵,即可通過Internet發布他們的套用。 HotJava沒有採取第一代
瀏覽器那樣的單一方法,而是將互動性的焦點從Web伺服器集中到Web客戶機上,即集中到用戶要瀏覽Web的計算機上。由於其基於Java語言系統,HotJava瀏覽器的客戶可以動態地卸載在客戶機上運行正確的
代碼段。這樣的Applet可以提供全動畫、聲音效果和與用戶的實時互動。 HotJava動態性取代了Mosaic一類的第一代
瀏覽器靜態的特徵,用戶的套用涵蓋了從互動式的以教學為主的科學試驗,到遊戲、專門的購物套用,還可以實現廣告、報紙,以及一系列還沒有想到的主要套用。 需要強調的是,HotJava為用戶訪問這些套用提供了一種全新的方法。你需要的軟體可以透明地通過
網路傳輸到用戶的本地客戶機,用戶不必刻意去安裝某個套用,什麼時候需要,就可以隨時從網上傳過來。WWW的內容開發者不必擔心安裝在用戶系統中的是否是特殊的
軟體代碼,它只需自動地獲取就行了。
起源
1994年,Java開發人員仿照了
Mosaic開發出以Java程式語言為基礎的瀏覽器WebRunner。WebRunner的首次公開展示由約翰·蓋格和
詹姆斯·高斯林於1995年
蒙特雷的TED大會進行。同年5月在SunWorld會議正式宣布更名為HotJava。
事實上,太陽微系統在1995年發表了
Java程式語言後,由於當時的網頁瀏覽器多數只能瀏覽網頁內的靜態數據,如文字、表格、圖形等,尚無法在網頁中運行程式,而太陽微系統希望讓Java程式成為瀏覽器上最普及使用的程式,初期特別是積極於容量小,容易在頻寬有限的網際網路上傳輸、下載的Java Applet,而當時多數的瀏覽器尚無法支持與運行Java Applet。
不過,HotJava雖可執行Java Applet程式,但真正用於一般網頁瀏覽的效果及支持並不佳,人們依然習慣使用網景公司的
網景導航者網頁瀏覽器,或是
微軟公司的
Internet Explorer網頁瀏覽器,特別是太陽微系統為了讓各種瀏覽器都可以運行Java Applet,所以也推出Java
外掛程式,安裝此軟體即可讓多數的網頁瀏覽器也能運行Java Applet。
因此,既然許多網頁瀏覽器也能運行Java Applet,以致HotJava幾乎只有Java Applet程式語言的初學者用來練習撰寫程式的效果驗證之用,並未獲得進一步普及,此後到了1999年太陽微系統方面也宣布停止此套HotJava的後續發展,終止前的最後一版是HotJava 3.0。
注釋
跳轉^微軟為了對付Java Applet而提出
ActiveX技術,不過當時也積極推行IE的使用,所以讓IE同時支持Java Applet與ActiveX的運行。
跳轉^由於Java Applet運行緩慢,且又缺乏直覺便利的程式開發工具,自1999年開始逐漸被當時
Macromedia公司所提出的
Flash技術給取代。