java語(yǔ)言與平臺(tái)基礎(chǔ)知識(shí)點(diǎn)
使用Java之前,我們要先弄清楚Java語(yǔ)言和Java平臺(tái)之間的區(qū)別。然而,有時(shí)候不同的作者對(duì)語(yǔ)言和平臺(tái)的構(gòu)成會(huì)有不同的定義,所以人們有時(shí)不太清楚兩者之間的區(qū)別,分不清是語(yǔ)言還是平臺(tái)提供了代碼使用的編程特性。
因?yàn)楸緯拇蟛糠謨?nèi)容都需要你理解兩者的區(qū)別,所以這里需要說(shuō)明一下。以下是我們給出的定義。
Java語(yǔ)言
在“關(guān)于本書”中,我們提到Java語(yǔ)言是靜態(tài)類型、面向?qū)ο蟮恼Z(yǔ)言,希望你對(duì)這種說(shuō)法已經(jīng)非常熟悉了。Java語(yǔ)言還有一個(gè)非常明顯的特點(diǎn),它是(或者說(shuō)應(yīng)該是)人類可讀的。
Java平臺(tái)
平臺(tái)是提供運(yùn)行時(shí)環(huán)境的軟件。Java虛擬機(jī)(JVM)負(fù)責(zé)把類文件形式(人類不可讀)的代碼鏈接起來(lái)并執(zhí)行。JVM不能直接解釋Java語(yǔ)言的源文件,你要先把源文件轉(zhuǎn)換成類文件。
Java作為軟件系統(tǒng)之所以能成功,主要因?yàn)樗且环N標(biāo)準(zhǔn)。也就是說(shuō),它有規(guī)范文件描述它應(yīng)該如何工作。不同的廠商或項(xiàng)目組可以據(jù)此推出自己的實(shí)現(xiàn),這些不同實(shí)現(xiàn)的工作方式在理論上是相同的。規(guī)范雖然不能保證這些實(shí)現(xiàn)處理同一任務(wù)時(shí)表現(xiàn)如何,但可以保證處理結(jié)果的正確性。
控制Java系統(tǒng)的規(guī)范有多種,其中最重要的是《Java語(yǔ)言規(guī)范》(JLS)和《JVM規(guī)范》(VMSpec)。在Java 7中,這兩者之間的界限愈發(fā)清晰。實(shí)際上,VMSpec不再引用JLS中的任何內(nèi)容,如果你認(rèn)為這是Java 7重視Java之外其他語(yǔ)言的信號(hào),說(shuō)明你有見微知著的能力!希望你能繼續(xù)關(guān)注,接下來(lái)我們會(huì)更加深入地探討這兩個(gè)規(guī)范之間的差別。
提到Java的雙重角色,你自然想問:“它們兩者之間還有什么關(guān)聯(lián)嗎?”如果它們?cè)贘ava 7中如此涇渭分明,又是如何共同形成我們所熟悉的Java系統(tǒng)的呢?
連接Java語(yǔ)言和平臺(tái)之間的紐帶是統(tǒng)一的類文件(即.class文件)格式定義。認(rèn)真研究類文件的定義能讓你獲益匪淺,這是優(yōu)秀Java程序員向偉大Java程序員轉(zhuǎn)變的一個(gè)途徑。圖展示了產(chǎn)生和使用Java代碼的整個(gè)過程。
以上就是學(xué)習(xí)JAVA語(yǔ)言的基礎(chǔ)的知識(shí)點(diǎn),希望我們整理的內(nèi)容能幫助到大家。
相關(guān)文章
java設(shè)計(jì)模式學(xué)習(xí)之策略模式
這篇文章主要為大家詳細(xì)介紹了java設(shè)計(jì)模式學(xué)習(xí)之策略模式的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10Spring Cloud Gateway內(nèi)置的斷言和過濾器作用說(shuō)明
這篇文章主要介紹了Spring Cloud Gateway內(nèi)置的斷言和過濾器作用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06SpringBoot實(shí)現(xiàn)分庫(kù)分表
這篇文章主要介紹了SpringBoot實(shí)現(xiàn)分庫(kù)分表,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-02-02Lucene實(shí)現(xiàn)索引和查詢的實(shí)例講解
下面小編就為大家分享一篇Lucene實(shí)現(xiàn)索引和查詢的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2017-12-12Java?離線中文語(yǔ)音文字識(shí)別功能的實(shí)現(xiàn)代碼
這篇文章主要介紹了Java?離線中文語(yǔ)音文字識(shí)別,本次使用springboot?+maven實(shí)現(xiàn),官方demo為springboot+gradle,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07Java方法的參數(shù)傳遞機(jī)制實(shí)例詳解
這篇文章主要介紹了Java方法的參數(shù)傳遞機(jī)制,結(jié)合實(shí)例形式詳細(xì)分析了java方法參數(shù)傳遞機(jī)制原理、實(shí)現(xiàn)方法及操作注意事項(xiàng),需要的朋友可以參考下2019-09-09