色久综合AV在线_亚洲人成在线观看网站高清_av网页中文字幕_欧洲无码三级片在线看

?
徐州北大青鳥
當前位置: 主頁 > 新聞中心 > 媒體關注 >

Java為什么這么強?寫給初學的你,想高薪就業(yè)必看!

時間:2020-10-14 15:12來源:未知 作者:代碼如詩 點擊:
97%的企業(yè)桌面運行Java 美國有89%的桌面(或計算機)運行Java 全球有900萬Java開發(fā)人員 開發(fā)人員的頭號選擇 排名第一的部署平臺 有30億部移動電話運行Java 100%的藍光盤播放器附帶了Java 有
97%的企業(yè)桌面運行Java
美國有89%的桌面(或計算機)運行Java
全球有900萬Java開發(fā)人員
開發(fā)人員的頭號選擇
排名第一的部署平臺
有30億部移動電話運行Java
100%的藍光盤播放器附帶了Java
有50億張Java卡在使用
1.25億臺TV設備運行Java
前5個原始設備制造商均提供了Java ME
 
很牛逼不是嗎?OK,這么牛逼的背后,我們Java開發(fā)人員有想過每天和我們朝夕相處的Java到底是什么呢?當然,很多人腦海里第一反應一定是,Java不就是一門編程語言嗎,咱們每天寫代碼的語言啊。當然,這么說也是對的,只是Java實際包含的面更廣,一起往下來看下。
 
 
一、什么是Java
 
經(jīng)過了多年的發(fā)展,Java早已由一門單純的計算機編程語言,演變?yōu)榱艘惶讖姶蟮募夹g體系。是的,什么是Java,我想技術體系四個字應該是最好的概括了吧。Java設計者們將Java劃分為3種結構獨立但卻彼此依賴的技術體系分支,它們分別對應著不同的規(guī)范集合和組件:
 
Java SE(標準版),主要活躍在桌面領域,主要包含了Java API組件。
 
Java EE(企業(yè)版),活躍在企業(yè)級領域,除了包含Java API組件外,還擴充有Web組件、事務組件、分布式組件、EJB組件、消息組件等,綜合這些技術,開發(fā)人員完全可以構建出一個具備高性能、結構嚴謹?shù)钠髽I(yè)級應用,并且Java EE也是用于構建SOA(面向服務架構)的首選平臺。
Java ME(精簡版),活躍在嵌入式領域,稱之為精簡版的原因是,它僅保留了Java API中的部分組件,以及適應設備的一些特有組件。
 
上面講到Java技術體系的分支,那既然Java是一種技術體系,我們來看一下組成這種技術體系的技術:
 
Java編程語言
 
字節(jié)碼
Java API,包括Java API類庫和來自商業(yè)機構以及開源社區(qū)的第三方類庫
Java虛擬機
很多時候我們只關注了第一點,因為第一點才是和工作切實相關的。Java技術體系所包含的內(nèi)容實際上Java官方有提供給我們一張圖。
 
 
 
二、Java的優(yōu)點
 
Java能獲得如此廣泛的認可,除了它擁有一門結構嚴謹、面向?qū)ο蟮木幊陶Z言之外,還有許多不可忽視的優(yōu)點:
 
1、它擺脫了硬件平臺的束縛,實現(xiàn)了“一次編寫、到處運行”。
 
2、它提供了一個相對安全的內(nèi)存管理和訪問機制,避免了絕大部分的內(nèi)存泄露和指針越界問題。
 
3、它實現(xiàn)了熱點代碼檢測和運行時編譯及優(yōu)化,這使得Java應用能隨著運行時間的增加而獲得更高的性能。
 
4、它有一套完整的應用程序接口,還有無數(shù)來自商業(yè)機構和開源社區(qū)的第三方類庫來幫助它實現(xiàn)各種各樣的功能。
 
5、它與身俱來對分布式技術的支持就比較完善。
 
但是,Java最大的優(yōu)勢和財富還不是以上這些,就像《Java虛擬機精講》中寫的,Java真正強大的地方是因為擁有全世界最多的技術擁護者和開源社區(qū)支持,他們無時無刻都保持著最充沛的體力與思維,一步一步地驅(qū)動著Java技術的走向。
 
 
三、JDK和JRE
 
兩個常見的重要概念。其實上面的圖中已經(jīng)劃分出了JDK和JRE的范圍了。我們對這張圖做一個歸納,用我們的語言簡單地總結一下什么是JDK和JRE:
 
1、JDK(Java Development Kit),是用于支持Java程序開發(fā)的最小環(huán)境,基本上Java程序設計語言、Java虛擬機、Java API類庫這三部分組成了JDK。
 
2、JRE(Java Runtime Enviroment),是支持Java程序運行的標準環(huán)境,Java API類庫中的Java SE API自己和Java虛擬機這兩部分組成了JRE。
 
 
四、OpenJDK
 
前面有講過,“Java真正強大的地方是因為擁有全世界最多的技術擁護者和開源社區(qū)支持,他們無時無刻都保持著最充沛的體力與思維,一步一步地驅(qū)動著Java技術的走向”。其實JDK在一開始并不是開源的,但是隨著開源運動的蓬勃發(fā)展,2006年Sun公司宣布將對Java開放源代碼,開源的Java平臺開發(fā)主要集中在OpenJDK項目上。
 
2009年4月15日,Sun公司正式發(fā)布OpenJDK,JDK 7則是Java開源后發(fā)布的第一個版本,任何組織和個人都可以為Java的發(fā)展做出貢獻。當然OpenJDK和真正的Oracle JDK(因為Sun公司被Oracle公司在2010年收購了嘛,所以就叫做Oracle JDK了)還是有區(qū)別的:
 
OpenJDK中的代碼基本上都來自于Oracle JDK,屬于Oracle JDK的一個分支,但是其中去除了一些非開源的組件和代碼,替換成了開源的組件和代碼,主要是加密和圖形的部分。因此用OpenJDK代替Oracle JDK可能會有一些的不兼容。
 
對于OpenJDK感興趣的,可以在OpenJDK官網(wǎng)http://download.java.net/openjdk/jdk7/下載OpenJDK的源代碼。像Java虛擬機HotSpot、Java編譯器Javac、JNI等等,源代碼都在里面。
 
 
五、JCP和JSR
 
JCP(Java Community Process)是一套制定Java技術規(guī)范的機制,通過制定和審查JSR(Java Specification Requests)推動Java技術規(guī)范的發(fā)展。一個已經(jīng)提交的JSR要想成為最終狀態(tài),需要經(jīng)過正式的公開審查,并由JCP委員會投票決定,最終的JSR會提供一個參考實現(xiàn),它是免費而且公開源代碼的。
 
JSR并非只由Oracle管理,任何個人都可以注冊并參與審查JSR,對于Java語言發(fā)展動態(tài)感興趣的人來說,跟蹤JSR的動態(tài)發(fā)展是一條不錯的學習途徑。在JCP官網(wǎng)http://www.jcp.org/中可以查看所有的JSR,下面列舉幾個大家熟悉的JSR:
 
JSR 14,泛型
JSR 51,NIO
JSR 175,注解
JSR 201,枚舉以及自動裝箱等
JSR 221,JDBC4.0 API
 
 
六、Java虛擬機
 
最后,輪到這個大哥登場,也是之后文章的主角。為什么Java可以實現(xiàn)所謂的“一次編寫,到處運行”,主要是因為虛擬機的存在。Java虛擬機負責Java程序設計語言的安全特性和平臺無關性。
 
Java虛擬機屏蔽了與具體操作系統(tǒng)平臺相關的信息,使得Java語言編譯器只需要生成在Java虛擬機上運行的字節(jié)碼,就可以在多種平臺上不加修改地運行。Java虛擬機使得Java擺脫了具體機器的束縛,使跨越不同平臺編寫程序成為了可能。
 
要多提一句,我們現(xiàn)在說的Java虛擬機基本上都是JDK自帶的虛擬機HotSpot,這款虛擬機也是目前商用虛擬中市場份額最大的一款虛擬機,可以通過在命令行程序中輸入“java -version”來查看。
 
那其實市面上還有很多別的優(yōu)秀的虛擬機。Sun公司除了有大名鼎鼎的HotSpot外,還有KVM、Squawk VM、Maxine VM,BEA公司有JRockit VM、IBM公司有J9 VM等等。
 
 
后記
 
越學習Java虛擬機,越覺得它有意思,工作中越能解決一些復雜的、奇怪的、別人解決不了的問題(為什么你比別人厲害、為什么你比別人拿更高的工資?說白了不就是你能解決別人解決不了的問題、做到別人做不到的事嗎?)。
 
又或者,當一個Java項目龐大到一定程度之后,就會根據(jù)自己的業(yè)務需求,定制自己的虛擬機,比如淘寶網(wǎng)就基于OpenJDK深度定制了Taobao VM,能做到這一點的基礎就是對Java虛擬機有深入的理解。
 
作為一個Java開發(fā),如果目標只是把寫代碼這件事情做好,那么OK,完全不需要去學習、研究Java語言之外的任何東西,每到一個公司,只要簡單理解公司項目的整體架構以及理清業(yè)務就好了。
 
但是如果目標是成為一名Java技術專家、CTO,相信代碼可以改變世界(至少我本人是朝著這個方向努力的),那么學習、研究虛擬機絕對是不可缺少的一課。
 
 
最后,如果你是完全零基礎的小白,北大青鳥徐州中博學院已經(jīng)為你準備好了教程,里面包含項目實戰(zhàn)內(nèi)容,直接報名就能聽!
 
試聽課
(責任編輯:代碼如詩)
------分隔線----------------------------
欄目列表
推薦內(nèi)容