亚洲综合在线一区二区三区-日韩超碰人人爽人人做人人添-麻豆国产精品久久人妻-无码人妻丰满熟妇啪啪-天堂精品一区二区三区-99久久综合狠狠综合久久aⅴ

×
新網 > 虛擬主機 > 正文

Java 虛擬機1:什么是 Java

  • 作者:新網
  • 來源:新網
  • 瀏覽:100
  • 2018-04-23 14:36:32

什么是Java?大家肯定覺得Java就是一種編程語言,就是軟件代碼的。覺得很牛逼。但是Java實際包含的面更廣,和小編一起往下來看。

   20140717175657_76340.jpg

  什么是Java?大家肯定覺得Java就是一種編程語言,就是軟件代碼的。覺得很牛逼。但是Java實際包含的面更廣,和小編一起往下來看。
  經過了多年的發展,Java早已由一門單純的計算機編程語言,演變為了一套強大的技術體系。是的,什么是Java,我想技術體系四個字應該是最好的概括了吧。Java設計者們將Java劃分為3種結構獨立但卻彼此依賴的技術體系分支,它們分別對應著不同的規范集合和組件:
  00001. Java SE(標準版),主要活躍在桌面領域,主要包含了Java API組件。
  00002. Java EE(企業版),活躍在企業級領域,除了包含Java API組件外,還擴充有Web組件、事務組件、分布式組件、EJB組件、消息組件等,綜合這些技術,開發人員完全可以構建出一個具備高性能、結構嚴謹的企業級應用,并且Java EE也是用于構建SOA(面向服務架構)的首選平臺。
  00003. Java ME(精簡版),活躍在嵌入式領域,稱之為精簡版的原因是,它僅保留了Java API中的部分組件,以及適應設備的一些特有組件。
  上面講到Java技術體系的分支,那既然Java是一種技術體系,我們來看一下組成這種技術體系的技術:
  00001. Java編程語言
  00002. 字節碼
  00003. Java API,包括Java API類庫和來自商業機構以及開源社區的第三方類庫
  00004. Java虛擬機
  很多時候我們只關注了第一點,因為第一點才是和工作切實相關的。Java技術體系所包含的內容實際上Java官方有提供給我們一張圖,圖片來源https://docs.oracle.com/javase/7/docs/
  Java的優點
  Java能獲得如此廣泛的認可,除了它擁有一門結構嚴謹、面向對象的編程語言之外,還有許多不可忽視的優點:
  1、它擺脫了硬件平臺的束縛,實現了“一次編寫、到處運行”
  2、它提供了一個相對安全的內存管理和訪問機制,避免了絕大部分的內存泄露和指針越界問題
  3、它實現了熱點代碼檢測和運行時編譯及優化,這使得Java應用能隨著運行時間的增加而獲得更高的性能
  4、它有一套完整的應用程序接口,還有無數來自商業機構和開源社區的第三方類庫來幫助它實現各種各樣的功能
  5、它與身俱來對分布式技術的支持就比較完善
  但是,Java最大的優勢和財富還不是以上這些,就像高翔龍老師在《Java虛擬機精講》中寫的,Java真正強大的地方是因為擁有全世界最多的技術擁護者和開源社區支持,他們無時無刻都保持著最充沛的體力與思維,一步一步地驅動著Java技術的走向。
  JDK和JRE
  兩個常見的重要概念。其實上面的圖中已經劃分出了JDK和JRE的范圍了。我們對這張圖做一個歸納,用我們的語言簡單地總結一下什么是JDK和JRE:
  1、JDK(Java Development Kit),是用于支持Java程序開發的最小環境,基本上Java程序設計語言、Java虛擬機、Java API類庫這三部分組成了JDK
  2、JRE(Java Runtime Enviroment),是支持Java程序運行的標準環境,Java API類庫中的Java SE API自己和Java虛擬機這兩部分組成了JRE
  OpenJDK
  前面有講過,“Java真正強大的地方是因為擁有全世界最多的技術擁護者和開源社區支持,他們無時無刻都保持著最充沛的體力與思維,一步一步地驅動著Java技術的走向”。其實JDK在一開始并不是開源的,但是隨著開源運動的蓬勃發展,2006年Sun公司宣布將對Java開放源代碼,開源的Java平臺開發主要集中在OpenJDK項目上。2009年4月15日,Sun公司正式發布OpenJDK,JDK 7則是Java開源后發布的第一個版本,任何組織和個人都可以為Java的發展做出貢獻。當然OpenJDK和真正的Oracle JDK(因為Sun公司被Oracle公司在2010年收購了嘛,所以就叫做Oracle JDK了)還是有區別的:
  OpenJDK中的代碼基本上都來自于Oracle JDK,屬于Oracle JDK的一個分支,但是其中去除了一些非開源的組件和代碼,替換成了開源的組件和代碼,主要是加密和圖形的部分。因此用OpenJDK代替Oracle JDK可能會有一些的不兼容。
  對于OpenJDK感興趣的,可以在OpenJDK官網https://download.java.net/openjdk/jdk7/下載OpenJDK的源代碼。像Java虛擬機HotSpot、Java編譯器Javac、JNI等等,源代碼都在里面。
  JCP和JSR
  JCP(Java Community Process)是一套制定Java技術規范的機制,通過制定和審查JSR(Java Specification Requests)推動Java技術規范的發展。一個已經提交的JSR要想成為最終狀態,需要經過正式的公開審查,并由JCP委員會投票決定,最終的JSR會提供一個參考實現,它是免費而且公開源代碼的。JSR并非只由Oracle管理,任何個人都可以注冊并參與審查JSR,對于Java語言發展動態感興趣的人來說,跟蹤JSR的動態發展是一條不錯的學習途徑。在JCP官網https://www.jcp.org/中可以查看所有的JSR,下面列舉幾個大家熟悉的JSR:
  00001. JSR 14,泛型
  00002. JSR 51,NIO
  00003. JSR 175,注解
  00004. JSR 201,枚舉以及自動裝箱等
  00005. JSR 221,JDBC4.0 API
  Java虛擬機
  最后,輪到這個大哥登場,也是之后文章的主角。為什么Java可以實現所謂的“一次編寫,到處運行”,主要是因為虛擬機的存在。Java虛擬機負責Java程序設計語言的安全特性和平臺無關性。Java虛擬機屏蔽了與具體操作系統平臺相關的信息,使得Java語言編譯器只需要生成在Java虛擬機上運行的字節碼,就可以在多種平臺上不加修改地運行。Java虛擬機使得Java擺脫了具體機器的束縛,使跨越不同平臺編寫程序成為了可能。
  要多提一句,我們現在說的Java虛擬機基本上都是JDK自帶的虛擬機HotSpot,這款虛擬機也是目前商用虛擬中市場份額最大的一款虛擬機,可以通過在命令行程序中輸入“java -version”來查看。
  那其實市面上還有很多別的優秀的虛擬機。Sun公司除了有大名鼎鼎的HotSpot外,還有KVM、Squawk VM、Maxine VM,BEA公司有JRockit VM、IBM公司有J9 VM等等。
 

免責聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,也不承認相關法律責任。如果您發現本社區中有涉嫌抄襲的內容,請發送郵件至:operations@xinnet.com進行舉報,并提供相關證據,一經查實,本站將立刻刪除涉嫌侵權內容。

免費咨詢獲取折扣

Loading
主站蜘蛛池模板: 国产精品制服一区二区| 日本免费大黄在线观看| 狠狠色噜噜狠狠狠狠7777米奇| 日本xxxx裸体xxxx视频大全| 粉嫩无套白浆第一次| 国产真人无码作爱视频免费| 国产又色又爽又黄的免费软件 | 强开少妇嫩苞又嫩又紧九色| 午夜视频久久久久一区二区| 亚洲欧美日韩视频高清专区| 伊人久久精品无码麻豆一区| 高h喷水荡肉爽文np肉色学校| 精品人妻无码一区二区三区蜜桃一| 精品国内自产拍在线观看 | 色99久久久久高潮综合影院| 无码亚欧激情视频在线观看| 亚洲高清毛片一区二区| 亚洲精品不卡av在线播放| 亚洲午夜国产成人av电影 | 国产毛多水多高潮高清| 精品国产性色无码av网站| 国产精品久久久久9999高清| 国内精品久久久久影院薰衣草| 俺来也俺去啦久久综合网| 国产精品麻花传媒二三区别| 综合激情五月丁香久久| 亚洲欧美va在线播放| 亚洲精品一区二区三区视频在线观看| 台湾佬中文在线一区二区| 免费少妇一区二区| 国产偷国产偷亚洲高清人| 国产乱子伦精品视频| 国产三级做爰在线播放| 国产精品视频色尤物yw| 国产av一区二区三区最新精品| 丰满多毛少妇做爰视频 | 精品国产乱码久久久久久软件大全| 久久99精品这里精品6| 国产第一区二区三区| 国产成 人 综合 亚洲网站 | 少妇把腿扒开让我爽爽视频|