国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java 2 Micro Edition簡介(二)

2019-11-18 14:17:17
字體:
來源:轉載
供稿:網友

?各種java版本之間的聯系 ? JINI技術

既然存在那幺多不同Java版本是一件事實,那幺,假如這些針對不同版本來開發的Java程序能夠彼此連結在一塊,互相分享彼此的資源,或是做資料交換,豈不是一件很棒的事情? 這就是JINI被創造出來的理由。各種不同版本的Java平臺藉由JINI彼此聯系,如下圖所示:




有關JINI技術,在此筆者不多著墨,因為市面上已經有許多書籍討論此技術。不過在上圖之中要請大家注重的是,Smart Card版本由于其特性使然,所以并沒有藉由JINI與其它Java版本的應用程序做溝通,而只是在JINI所造成的廣大分布式環境之中被用來作為認證之用。

?各種Java版本之程序開發

如前面所說,各種不同的Java版本,在其支持的核心類別之完整性以及所支持的Java基本型別這兩件事情上都有所差異,但是對于程序設計師而言,這些版本的關系下圖所示:



也就是說,不管您開發的是企業所使用的Java程序、手持裝置上執行的Java程序、瀏覽器上執行的Applet,或是在PC上執行的應用程序。您都必須在您的計算機上先安裝J2SE,然后再安裝各種版本的額外擴充類別,如此才能成功地開發各種不同功能的Java程序。

J2SE所提供的Java編譯器(javac.exe)可以幫助我們編譯各種不同平臺上的Java程序,而J2SE所提供的Java虛擬機器(java.exe)則可以幫助我們在PC上先行測試這些程序執行結果的正確與否。

另外,Java編譯器并不會幫您檢查您的程序是否符合各種平臺上所支持的核心類別與Java基本型別。舉例來說,雖然我們在上面說過,Smart Card版本中并不支持boolean、byte以外的Java基本型別,而且該平臺也只支持java.lang.*核心類別,可是當我們在撰寫Smart Card平臺上的程序時,就算在程序代碼里頭用了boolean或byte以外的Java基本型別,或者使用了java.lang.*之外的其它核心類別,編譯器仍然可以照常幫您編譯出類別檔出來。這個時候大家一定開始產生迷惑--那幺這些程序假如放到Smart Card上頭執行的時候,出了問題怎幺辦? 難道不會造成Smart Card上的虛擬機器發生執行錯誤嗎? 針對這個可能發生的潛在問題,所以在各種不同版本的開發套件中,有些會內附檢查器(checker)或者預先審核器(PReverifier),這兩個工具可以幫助您在將程序放到目標平臺之前先做好檢查和預先審核的工作。

檢查器會幫您找出類別文件之中不合目標平臺規格的部分,并提醒你這些地方可能無法在目的平臺上執行。因此只要有檢查器的協助,您大致上可以確定您的程序可以符合目標平臺的規定并順利執行。
而某些平臺的開發套件則附有預先審核器,之所以有預先審核器的原因是因為傳統Java程序(application、Servlet、Applet)的執行程序如下:



在傳統的Java程序之中,為了安全上的考量,任何進入執行環境的類別檔 (不管該類別檔是來自本機或是遠程機器),都必須先經過Byte Code審核器(Byte code verifier)的驗證,以防止有人在程序傳送途中遭到惡意的修改,而使得Java程序在執行時對系統有不良影響。經過驗證之后,該類別檔才能開始被JVM所執行。

假如這個審核的動作在一般的PC上執行,速度倒是還能夠接受,可是一旦放到如Palm或是手機這些CPU較慢、內存也較少的機器上面就顯得十分吃力了。為了節省寶貴的CPU運算時間(既能省電又能夠加速程序執行),因此,在程序設計師產生能夠讓某些特定平臺執行的類別檔之前,程序設計師必須先在PC上使用預先審核器做一些前置的驗證工作,預先審核器會在類別文件之中加入一些非凡標記或符號。如此一來,當這些程序放到目標平臺上執行時,就可以大幅減少在目標平臺上做驗證時的時間,藉而加速程序的的激活及執行速度。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 河曲县| 绥化市| 万年县| 沂南县| 肇庆市| 龙江县| 姚安县| 临泽县| 青铜峡市| 大石桥市| 福建省| 齐齐哈尔市| 靖边县| 正安县| 兖州市| 威海市| 镇安县| 池州市| 滦平县| 甘洛县| 阜宁县| 余江县| 竹北市| 个旧市| 淮南市| 青川县| 玛曲县| 常宁市| 桂阳县| 松阳县| 湾仔区| 班玛县| 屏东市| 进贤县| 家居| 关岭| 平潭县| 宜宾市| 光泽县| 北辰区| 平邑县|