- Java程序設(shè)計(jì)與開發(fā)
- 張曉龍主編
- 440字
- 2018-12-29 19:13:02
1.3.2 Java虛擬機(jī)
JVM(Java虛擬機(jī))是Java Virtual Machine的縮寫。它是一個(gè)虛構(gòu)出來的計(jì)算機(jī),是通過在實(shí)際的計(jì)算機(jī)上模擬各種計(jì)算機(jī)功能來實(shí)現(xiàn)的。Java虛擬機(jī)有自己完善的硬件架構(gòu),例如處理器、堆棧、寄存器等,還具有相應(yīng)的指令系統(tǒng)。Java語言的一個(gè)非常重要的特點(diǎn)就是與平臺(tái)無關(guān)性,而使用Java虛擬機(jī)是實(shí)現(xiàn)這一特點(diǎn)的關(guān)鍵。一般的高級(jí)語言要在不同的平臺(tái)上運(yùn)行時(shí),至少需要編譯成不同的目標(biāo)代碼。而引入Java虛擬機(jī)后,它屏蔽了與具體平臺(tái)相關(guān)的信息,使得Java編譯程序只需生成能在Java虛擬機(jī)上運(yùn)行的目標(biāo)代碼(字節(jié)碼),然后,Java虛擬機(jī)把字節(jié)碼解釋成具體平臺(tái)上的機(jī)器指令執(zhí)行。因此,Java程序無須重新編譯就可以跨平臺(tái)運(yùn)行。
JVM在執(zhí)行應(yīng)用程序時(shí)具有以下3個(gè)典型特點(diǎn)。
① 多線程:Java虛擬機(jī)采用多線程方式運(yùn)行,各線程獨(dú)立執(zhí)行Java代碼,并能夠協(xié)調(diào)一致地處理共享數(shù)據(jù)。
② 動(dòng)態(tài)性:Java虛擬機(jī)在內(nèi)存管理等功能方面全部采用動(dòng)態(tài)方式,如動(dòng)態(tài)分配數(shù)組的存儲(chǔ)空間、動(dòng)態(tài)創(chuàng)建對(duì)象、動(dòng)態(tài)連接數(shù)據(jù)庫等,這些動(dòng)態(tài)特性使Java程序適合在網(wǎng)絡(luò)上運(yùn)行。
③ 異常處理機(jī)制:Java虛擬機(jī)提供可靠的異常處理機(jī)制。
- C語言程序設(shè)計(jì)案例教程(第2版)
- Java 開發(fā)從入門到精通(第2版)
- 機(jī)器學(xué)習(xí)系統(tǒng):設(shè)計(jì)和實(shí)現(xiàn)
- 編程卓越之道(卷3):軟件工程化
- Oracle BAM 11gR1 Handbook
- INSTANT OpenNMS Starter
- AutoCAD 2009實(shí)訓(xùn)指導(dǎo)
- Spring Boot實(shí)戰(zhàn)
- 3ds Max印象 電視欄目包裝動(dòng)畫與特效制作
- 網(wǎng)絡(luò)數(shù)據(jù)采集技術(shù):Java網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)
- RESTful Web Clients:基于超媒體的可復(fù)用客戶端
- HTML5+CSS3+JavaScript 從入門到項(xiàng)目實(shí)踐(超值版)
- Greenplum構(gòu)建實(shí)時(shí)數(shù)據(jù)倉庫實(shí)踐
- 天天學(xué)敏捷:Scrum團(tuán)隊(duì)轉(zhuǎn)型記
- HTML5+CSS3從入門到精通(微課精編版)