<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Java是物件導向的程式語言,在我們開發Java應用的程式設計師的專業術語裡,Java這個單詞其實指的是Java開發工具,也就是JDK(Java Development Kit)。所以我們常常在CSDN等各大程式設計師論壇討論到安裝Java8或者JDK8或者JDK1.8或J2SE8或J2SE1.8或J2SE8或J2SE1.8,其實這3個專業詞彙的概念是一樣的。
告訴慶哥,你對Java的版本號以及JDK的命名真正清楚嘛?比如:
知道這些是怎麼回事嘛?知道還有個Java 2的說法嘛?知道還有以下說法嘛?
現在已經6月份了,到了9月份,一個新的長期支援版本,Java17就要釋出了,啥?Java版本都到17了?不不不,我一直在用JDK1.8啊,咦,JDK1.8?Java17?
這是怎麼回事呢?彆著急,今天慶哥帶你徹底搞懂這些蜜汁操作!
要搞懂這些令人疑惑的人命名,那理解的一個關鍵就是Java版本和JDK版本了,首先啊,咱們常說Java有三個版本,對吧,分別是:
其實啊,你只要關注JavaSE就行,這個是Java的標準版本,像ME忽視就行,至於JavaEE是在JavaSE的基礎上升級而來的一套規範,我們平常做Java開發,你想下,是不是就是需要個JDK,這個JDK是與JavaSE相對應的。
完了,我知道你們又懵了……
那我就再詳細點給大家說說這個JavaEE,其實我們平常聽到最多的,用到最多的就是JavaSE,因為人家是Java的標準版本,但是這個JavaSE提供的是Java的核心功能,一般是用來開發桌面應用的,但是企業級開發,我們做的專案啥的就不簡簡單單是個桌面級應用了,一般是web應用,動態網站這些!
那麼問題來了,面對企業級的比較大的專案開發,JavaSE提供的一些核心基礎功能用倒是可以用,但是用起來太費勁了,很多東西都得自己從頭造輪子,一步步的用程式碼從最基礎的開始寫,費勁啊。
於是乎,在JavaSE的基礎上整理出一套規範,其目的就是用來解決企業級開發中遇到的一些問題,這些問題就是單獨用JavaSE去整比較費勁的東西!
那啥又是規範呢?說白了,就是規定你該怎樣怎樣去做,比如面對常見的web請求處理,我們知道有servlet,那JavaEE就對servlet做了規範,也就是說你如果要用servlet去處理一個web請求,首先嘞,你必須得實現一個HttpServlet類,這還沒完,你這個類還得繼承Servlet介面,而且你還得實現它的介面方法,哪些呢?就是doGet和doPost這些,咋樣,熟悉吧,再比如你這個doGet方法還必須得接收兩個引數……
你看,JavaEE就給你規定了Servlet得按照這個規定去使用,於時一些其他廠商就圍繞JavaEE的這些規範去做一些具體的實現,比如我們常見的tomcat,它被成為servlet容器,其中的servlet實現就是給予JavaEE對servlet做出的規範!
說的再簡單點,JavaEE規定了servlet如何去處理web請求,然後具體的廠商根據這個規定去做具體的實現和增強,然後就搞出了tomcat……
那Spring是啥呢?最開始的Spring就是為了解決JavaEE在使用中遇到的一些問題,比如JavaEE中規定的servlet,那spring中的spring-mvc就是對這個servlet的進一步封裝,從而讓其變得更加好用!
實際上,spring中大量使用了或者實現了JavaEE的一些規範標準!說的再直白點,你JavaEE不是一組規範嘛,規定了啥啥啥該怎麼用,那我spring就這樣做,你規範中確實比較好用的我就直接拿來用,不好用的我就在加工處理封裝成更好用的,可以簡單的理解成spring就是JavaEE的升級版,或者超強實現版!
隨著時間的發展,JavaEE的更新太慢了,而Spring就非常迅速,而且人家超級好用,因此,慢慢的JavaEE早就落後十萬八千里了。
你像我們平常做開發,就下載設定個JDK,其實就是對應的JavaSE,然後我們使用的一般就是以Spring為主的框架了,那JavaEE體現在哪裡,Spring框架中大量使用和實現了JavaEE規範,而JavaEE又是在JavaSE基礎上升級而來的一組規範,那可不就是一個JDK就行了!
所以,現在你看一些關於JavaEE開發框架的書,其實都是在介紹SSM這些框架的,說白了,JavaEE慢慢也就成了各種給予其規範實現的一些框架了,為首的就是老大哥Spring了!
以上花了較多篇幅去介紹到底啥是JavaEE以及和Spring的一些關係,你就記住:
用Spring就對了
那我們再來看Java版本號的這些神奇操作,之前也說了,理解的關鍵就是Java版本和JDK版本,重點理解如下:
我們無論說Java版本還是JDK版本都是對於JavaSE這個標準版本而言,最終的則是要知道,每個Java版本其實是對應一個具體的JDK版本,也就是說Java是語言,JDK是Java這門語言的開發工具包,所以Java的版本可以說是抽象上的宏觀上的一個概念,有其自己的版本名稱,對應的具體的實實在在存在的則是JDK了
記住啦,一個Java版本對應著一個JDK版本!
我這裡花了一個圖,大家一起來看下:
也就是最開始啊,Java的早期版本是在1995年釋出的,那個時候是叫做Oak,但是這個商標被註冊了,於時在1996年的時候更改為Java,那這個時候Java的第一個正式版本Java1.0就釋出了,於此同時對應的開發工具包jdk的版本就是JDK1.0了。
那隨著時間的發展,Java的版本不是一直叫做Java1.X這種形式,在到了1998年的時候,Java的平臺更名為J2SE,所以從那個時候,Java的版本命名就成了J2SE 1.2這種形式,也就是這裡:
那與之對應的JDK的版本就是JDK1.2和JDK1.3這種形式了!
那到了2004年的時候,Java版本變化比較大,此時對應的JDK1.5升級比較大,那為了表明該版本的重要性,於時將Java版本從原來的J2SE 1.5更名為Java SE 5.0(內部版本號1.5.0),於是後續的Java版本號都是Java SE X的這種形式,也就是這樣:
這裡需要注意的是,直到2017年JavaSE 9的釋出,此時對應的JDK版本都是JDK1.X這種形式,但是到了2018年JavaSE 10的釋出就變了!
到了2018年釋出JavaSE 10的時候,此時對應的JDK版本不再是JDK1.10這種形式,而是變成了JDK10這種形式,其實這個也是比較好理解的!
那後續的版本就是這個樣子了:
直到現在一直就穩定這樣的命名了,比如最新的JavaSE 16對應的JDK16,那到了這裡,又有個蜜汁操作了,我們看下Oracle的官網上的JDK變化:
看到沒,這裡有JDK7,JDK8還有JDK9,按照我們之前說的不應該是這樣的嘛:
所以說啊,關於Java的版本和JDK版本命名真的挺亂的,在2018年更新JavaSE 10之後,對應的JDK版本叫做JDK10,後續為了方便統一,之前的JDK1.8也可以叫做JDK8了!
不過到了現在,Java的版本號比較穩定了,也就是Java SE XX這種形式,比如即將釋出的Java SE 17,這是一個長期受支援的版本!那對應的JDK版本就是JDK17了。
作為一個Java程式設計師,你要隨時關注著Java的版本更新,以及JDK的升級帶來了哪些新特性,那該如何關注這些呢?
其實就是這個:
比如我們點選最新的JDK16:
不知道的趕緊收藏這個地址吧:https://docs.oracle.com/en/java/javase/index.html
另外這裡再提供一個隨時檢視Java版本變化的地址,可以看到一個比較直觀的圖片,就是這樣的:
是不是很直觀呢?
趕緊收藏地址吧:https://zh.wikipedia.org/wiki/Java%E7%89%88%E6%9C%AC%E6%AD%B7%E5%8F%B2
以上內容是我根據自己的經驗以及查詢相關資料所得,當然,其中的內容也有可能存在一些錯誤,比如關於JavaEE那塊的理解,我理解的可能不夠準確,因此,如果你在閱讀本文中發現描述不夠準確或有誤的地方,還請給予我一定的反饋,非常感謝!
到此這篇關於一文徹底搞懂Java和JDK的版本命名問題的文章就介紹到這了,更多相關Java和JDK的版本命名內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45