天行健,君子以自強(qiáng)不息

          BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
            12 Posts :: 0 Stories :: 2 Comments :: 0 Trackbacks

          公告

          記錄java生活點(diǎn)滴,即為查閱,亦可共享 
          mailto:  cafebabe@yeah.net

          留言簿(4)

          隨筆檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          一、Java體系結(jié)構(gòu)
          Java體系結(jié)構(gòu)包括四個(gè)獨(dú)立但相關(guān)的技術(shù):

          • Java程序設(shè)計(jì)語(yǔ)言
          • Java class文件格式
          • Java應(yīng)用編程接口(API)
          • Java虛擬機(jī)

          二、Java虛擬機(jī)

          Java虛擬機(jī)是Java的面向網(wǎng)絡(luò)的核心,它支持Java面向網(wǎng)絡(luò)體系結(jié)構(gòu)三大支柱的所有方面:平臺(tái)無(wú)關(guān)性,安全性和網(wǎng)絡(luò)移動(dòng)性。Java虛擬機(jī)的主要任務(wù)是裝載class文件并且執(zhí)行其中的字節(jié)碼。classloader負(fù)責(zé)裝載class文件,執(zhí)行引擎負(fù)責(zé)執(zhí)行字節(jié)碼。
              執(zhí)行引擎
          由于Java虛擬機(jī)規(guī)范只定義了每個(gè)虛擬機(jī)都必須實(shí)現(xiàn)的特性,沒(méi)有規(guī)定具體的實(shí)現(xiàn)方法,因此不同的Java虛擬機(jī),執(zhí)行引擎可能實(shí)現(xiàn)的非常不同,一般來(lái)說(shuō)有如下幾種實(shí)現(xiàn)方法:

          1. 一次性解釋字節(jié)碼。
          2. 即時(shí)編譯器(just-in-time compiler),這種情況下,第一次被執(zhí)行的字節(jié)碼會(huì)被編譯成本地機(jī)器代碼,編譯出的本地機(jī)器代碼會(huì)被緩存,當(dāng)方法以后被調(diào)用的時(shí)候可以重用。
          3. 自適應(yīng)優(yōu)化器,這種情況下,虛擬機(jī)開(kāi)始的時(shí)候解釋字節(jié)碼,但是會(huì)監(jiān)視運(yùn)行中程序的活動(dòng),并且記錄下使用頻繁的代碼段,程序運(yùn)行的時(shí)候,虛擬機(jī)只會(huì)把那些活動(dòng)最頻繁的代碼編譯成本地版本,其他仍舊保留字節(jié)碼--由虛擬機(jī)繼續(xù)解釋它們。一個(gè)自適應(yīng)的優(yōu)化器可以使得Java虛擬機(jī)在80%-90%的時(shí)間里執(zhí)行被優(yōu)化過(guò)的本地代碼。
          4. 由硬件芯片構(gòu)成,由本地方法執(zhí)行Java字節(jié)碼,實(shí)際上這種實(shí)現(xiàn)是把執(zhí)行引擎內(nèi)嵌在芯片里。

              Classloader
          一個(gè)java應(yīng)用程序可以有兩種類裝載器:?jiǎn)?dòng)類裝載器(bootstrap)和用戶定義的類裝載器,啟動(dòng)類裝載器是唯一的,它屬于Java虛擬機(jī)實(shí)現(xiàn)的一部分。
          每一個(gè)類裝載器都有它自己的命名空間,一個(gè)類只能”看到“由同一個(gè)類裝載器裝載的其他類,不能跨命名空間訪問(wèn)。
          用過(guò)允許實(shí)例化用戶自定義的類裝載器(該類裝載器知道如何從網(wǎng)絡(luò)下載class文件),Java類裝載器的體系結(jié)構(gòu)提供了對(duì)網(wǎng)絡(luò)移動(dòng)性的支持;通過(guò)允許使用不同的用戶定義的類裝載器裝載不同來(lái)源的class文件,Java類裝載器的體系結(jié)構(gòu)提供了對(duì)完全性的支持。

          posted on 2008-03-22 00:55 yill 閱讀(288) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 中江县| 浙江省| 类乌齐县| 无锡市| 芜湖县| 马尔康县| 长丰县| 石阡县| 冀州市| 延安市| 嘉义市| 融水| 阿瓦提县| 抚远县| 邢台县| 塔城市| 正宁县| 井研县| 鹿邑县| 长海县| 隆化县| 河东区| 从江县| 泰来县| 聂荣县| 丰城市| 新闻| 东平县| 萨迦县| 丰县| 剑阁县| 塘沽区| 阿城市| 海南省| 噶尔县| 仁布县| 满城县| 囊谦县| 琼中| 合作市| 望谟县|