什么是JDK?JDK和jJRE內(nèi)部的一些聯(lián)系和區(qū)別
- IT百科
- 2021-03-11 16:53:20
JDK是學(xué)好Java的第一步。不管是你要學(xué)習(xí)java編程,還是要搭建jsp web開(kāi)發(fā)環(huán)境,或者是android開(kāi)發(fā)環(huán)境都離不開(kāi)它。
什么是jdk
1、jdk是什么呢?jdk的是java development kit的縮寫(xiě),意思是java程序開(kāi)發(fā)的工具包。也可以說(shuō)jdk是java的sdk。
JDK是 Java 語(yǔ)言的軟件開(kāi)發(fā)工具包,主要用于移動(dòng)設(shè)備、嵌入式設(shè)備上的java應(yīng)用程序。JDK是整個(gè)java開(kāi)發(fā)的核心,它包含了JAVA的運(yùn)行環(huán)境,JAVA工具和JAVA基礎(chǔ)的類(lèi)庫(kù)。
JDK(Java Development Kit) 是 Java 語(yǔ)言的軟件開(kāi)發(fā)工具包(SDK)。
SE(J2SE),standard edition,標(biāo)準(zhǔn)版,是我們通常用的一個(gè)版本,從JDK 5.0開(kāi)始,改名為Java SE。
EE(J2EE),enterprise edition,企業(yè)版,使用這種JDK開(kāi)發(fā)J2EE應(yīng)用程序,從JDK 5.0開(kāi)始,改名為Java EE。
ME(J2ME),micro edition,主要用于移動(dòng)設(shè)備、嵌入式設(shè)備上的java應(yīng)用程序,從JDK 5.0開(kāi)始,改名為Java ME。
沒(méi)有JDK的話,無(wú)法編譯Java程序,如果想只運(yùn)行Java程序,要確保已安裝相應(yīng)的JRE。
2、先來(lái)說(shuō)一下jdk的版本,一共有三種,標(biāo)準(zhǔn)版,企業(yè)版,移動(dòng)設(shè)備版。
3、不知道大家看到Java SE 6.0和jdk1.6是不是一個(gè)頭兩個(gè)大呢,其實(shí)它們是同一個(gè)東西。因?yàn)閖dk從1.5版本開(kāi)始就改名為Java SE,通常使用的都是J2se也就是標(biāo)準(zhǔn)版的jdk。
4、什么是JRE?
普通用戶(hù)并不需要安裝JDK來(lái)運(yùn)行Java程序,而只需要安裝JRE(Java Runtime Environment)。而程序開(kāi)發(fā)者必須安裝JDK來(lái)編譯、調(diào)試程序。
5、什么是JDK?
顧名思義它是給開(kāi)發(fā)者提供的開(kāi)發(fā)工具箱,是給程序開(kāi)發(fā)者用的。它除了包括完整的JRE(Java Runtime Environment),Java運(yùn)行環(huán)境,還包含了其他供開(kāi)發(fā)者使用的工具包。
通過(guò)安裝Java SE 6.0理解jdk
1、安裝的jdk1.6,實(shí)際上現(xiàn)在的正確名稱(chēng)是 java se development kit 6,即java標(biāo)準(zhǔn)版的開(kāi)發(fā)工具包,版本為6.0。
2、看一下安裝好的目錄結(jié)構(gòu),進(jìn)入到安裝目錄,可以看到j(luò)re目錄,這是運(yùn)行java程序需要的。
3、進(jìn)入到安裝目錄的bin文件夾,我們可以看到之前我們提到的一些工具包,比如javac,javadoc等等。
jdk和jre的區(qū)別
大家肯定在安裝JDK的時(shí)候會(huì)有選擇是否安裝單獨(dú)的jre,一般都會(huì)一起安裝,也建議大家這樣做。
因?yàn)檫@樣更能幫助大家弄清楚它們的區(qū)別:
Jre 是Java runtime environment, 是java程序的運(yùn)行環(huán)境。既然是運(yùn)行,當(dāng)然要包含jvm,也就是大家熟悉的虛擬機(jī),還有所有java類(lèi)庫(kù)的class文件,都在lib目錄下打包成了jar。大家可以自己驗(yàn)證。
Jdk 是java development kit,是java的開(kāi)發(fā)工具包,里面包含了各種類(lèi)庫(kù)和工具。當(dāng)然也包括了另外一個(gè)Jre. 那么為什么要包括另外一個(gè)Jre呢?而且jdk/jre/bin同時(shí)有client和server兩個(gè)文件夾下都包含一個(gè)jvm.dll。說(shuō)明是有兩個(gè)虛擬機(jī)的。
相信大家都知道jdk的bin下有各種java程序需要用到的命令,與jre的bin目錄最明顯的區(qū)別就是jdk下才有javac,這一點(diǎn)很好理解,因?yàn)?jre只是一個(gè)運(yùn)行環(huán)境而已。與開(kāi)發(fā)無(wú)關(guān),正因?yàn)槿绱?,具備開(kāi)發(fā)功能的jdk自己的jre下才會(huì)同時(shí)有client性質(zhì)的jvm和server性質(zhì)的 jvm,而僅僅作為運(yùn)行環(huán)境的jre下只需要client性質(zhì)的jvm.dll就夠了。
記得在環(huán)境變量path中設(shè)置jdk/bin路徑麼?這應(yīng)該是大家學(xué)習(xí)Java的第一步吧,老師會(huì)告訴大家不設(shè)置的話javac和java是用不了的。確實(shí)jdk/bin目錄下包含了所有的命令。可是有沒(méi)有人想過(guò)用的java命令并不是 jdk/bin目錄下的而是jre/bin目錄下的呢?不信可以做一個(gè)實(shí)驗(yàn),大家可以把jdk/bin目錄下的java.exe剪切到別的地方再運(yùn)行java程序,發(fā)現(xiàn)了什么?一切OK!
那么有人會(huì)問(wèn)了?明明沒(méi)有設(shè)置jre/bin目錄到環(huán)境變量中。
試想一下如果java為了提供給大多數(shù)人使用,他們是不需要jdk做開(kāi)發(fā)的,只需要jre能讓java程序跑起來(lái)就可以了,那么每個(gè)客戶(hù)還需要手動(dòng)去設(shè)置環(huán)境變量多麻煩,所以安裝jre的時(shí)候安裝程序自動(dòng)幫你把jre的java.exe添加到了系統(tǒng)變量中,驗(yàn)證的方法很簡(jiǎn)單,大家看到了系統(tǒng)環(huán)境變量的 path最前面有“%SystemRoot%/system32;%SystemRoot%;”這樣的配置,那么再去Windows/system32下面去看看吧,發(fā)現(xiàn)了什么?有一個(gè)java.exe。
如果強(qiáng)行能夠把jdk/bin挪到system32變量前面,當(dāng)然也可以迫使使用jdk/jre里面的java,不過(guò)除非有必要,不建議大家這么做。使用單獨(dú)的jre跑java程序也算是客戶(hù)環(huán)境下的一種測(cè)試。
這下大家應(yīng)該更清楚jdk和jre內(nèi)部的一些聯(lián)系和區(qū)別了吧?
全國(guó)榮譽(yù)公示!福建這些縣(市、區(qū))上榜-新要聞
- 福建兩地為困難群體免費(fèi)發(fā)放“暖心防疫包”
- 元旦假期南鐵預(yù)計(jì)發(fā)送旅客146萬(wàn)人次,福建各車(chē)站有何舉措?|焦點(diǎn)快報(bào)
- 天天簡(jiǎn)訊:《福建省公安機(jī)關(guān)警務(wù)輔助人員管理?xiàng)l例》將于1月1日起施行
- 滾動(dòng):福建:101個(gè)科技計(jì)劃項(xiàng)目獲省財(cái)政補(bǔ)助
- 組考防疫“不落一人” 福建順利實(shí)現(xiàn)平安研考:環(huán)球時(shí)訊
- 福建:和美鄉(xiāng)村建設(shè)再“上新”-世界熱資訊
- 福建:站點(diǎn)盡在“掌握” 服務(wù)觸手可及_天天熱推薦
- 今年福建農(nóng)村建設(shè)品質(zhì)提升任務(wù)全面完成-快報(bào)
- 全球今頭條!2022年中國(guó)福建人才創(chuàng)業(yè)周啟動(dòng) 聚焦高層次人才創(chuàng)業(yè)創(chuàng)新
- 低溫天氣對(duì)健康有哪些危害?如何健康度過(guò)寒2022-12-30
- 為維護(hù)年末流動(dòng)性平穩(wěn) 央行連續(xù)開(kāi)展逆回購(gòu)2022-12-30
- 藍(lán)領(lǐng)群體就業(yè)呈現(xiàn)新趨勢(shì) 直播招聘成求職新2022-12-30
- 2021年全國(guó)平均工資多少?哪兒的人最能“花2022-12-30
- 聞雞起舞的歷史人物是誰(shuí)?聞雞起舞的聞是什2022-12-30
- 知網(wǎng)是做什么的?知網(wǎng)是國(guó)企還是私企?知網(wǎng)2022-12-30
- 絲綢之路的意義是什么?絲綢之路的起點(diǎn)和終2022-12-30
- 兩寸照片的尺寸是多少?手機(jī)怎么調(diào)整照片二2022-12-30
- 不為五斗米不折腰是誰(shuí)?不為五斗米不折腰的2022-12-30
- Z開(kāi)頭的火車(chē)是什么車(chē)?z和t開(kāi)頭的火車(chē)的區(qū)2022-12-30
- 自由落體速度每秒多少米?自由落體速度與質(zhì)2022-12-30
- 哈爾濱特產(chǎn)有哪些?哈爾濱特色十大名小吃都2022-12-30
- 觀速訊丨實(shí)用版藥品代理合同模板分享 實(shí)用2022-12-30
- 我的樂(lè)園作文怎么寫(xiě) 我的樂(lè)園作文范文欣賞2022-12-30
- 小學(xué)數(shù)學(xué)三年級(jí)下冊(cè)第一單元測(cè)驗(yàn)卷分享 小2022-12-30
- 環(huán)球快看:母親節(jié)活動(dòng)主題標(biāo)語(yǔ)有哪些 母親2022-12-30
- 挽留愛(ài)情的句子有哪些 挽留愛(ài)情的句子合集2022-12-30
- 滾動(dòng):教師節(jié)賀卡手工制作教程介紹 教師節(jié)2022-12-30
- 《六月二十七日望湖樓醉書(shū)》譯文是什么 《2022-12-30
- 【世界快播報(bào)】移動(dòng)端網(wǎng)頁(yè)設(shè)計(jì)方法有哪些 2022-12-30
- 孩子夏令營(yíng)注意事項(xiàng)主要有哪些 孩子夏令營(yíng)2022-12-30
- 當(dāng)前快看:筆記本硬盤(pán)常見(jiàn)故障有哪些 筆記2022-12-30
- 英語(yǔ)常用單詞有哪些 英語(yǔ)常用單詞翻譯合集2022-12-30
- 初一英語(yǔ)要點(diǎn)知識(shí)歸納總結(jié) 初一英語(yǔ)要點(diǎn)知2022-12-30
- 藝考鋼琴考試有哪些注意事項(xiàng) 藝考鋼琴考試2022-12-30
- 今日關(guān)注:什么是產(chǎn)品三維動(dòng)畫(huà) 產(chǎn)品三維動(dòng)2022-12-30
- 移動(dòng)通信營(yíng)銷(xiāo)推廣方案是什么 移動(dòng)通信營(yíng)2022-12-30
- 招聘流程管理制度怎么制定 招聘流程管理制2022-12-30
- 每日聚焦:測(cè)試工程師崗位職責(zé)是什么 測(cè)試2022-12-30
- 世界熱議:小升初語(yǔ)文試卷及答案參考 小升2022-12-30