jre是什么
JRE是Java Runtime Enviroment是指Java的運行環境,是面向Java程序的使用者,而不是開發者。JRE是我們運行相應軟件的時候都會出現的,那么它究竟是什么呢?接下來就由小編帶來jre是什么,希望對你有所幫助!
jre是什么
JRE(Java Runtime Environment,Java運行環境),運行JAVA程序所必須的環境的集合,包含JVM標準實現及Java核心類庫。
拓展閱讀:JRE管理機制
分類
Net Framework的類庫管理機制 .Net Framework的類庫管理機制相當強大和復雜,分為私有類庫和共享類庫。
私有類庫就放在exe程序當前路徑下,或其相對路徑中,只有當前程序可見。
注意事項
1、共享類庫需要在GAC(Global Assembly Cache)中注冊,注冊過程比較復雜,首先要用工具生成公開/私有密鑰對,然后結合密鑰和類庫版本號連編,最后使用工具注冊到GAC中好以后,會被放在"C:Winntassemblygac類庫的名稱空間版本號"目錄下,不同的類庫版本在注冊的時候會按照版本號分開放置:
某類庫1.0版本 C:Winntassemblygac名稱1.0名稱.dll
某類庫1.1版本 C:Winntassemblygac名稱1.1名稱.dll
2、可以同時存在一個類庫的n個版本,至于在程序中用哪個版本,在程序的配置文件中聲明,CLR會根據聲明來調用相應的版本的類庫。我覺得.Net實現方法未免太復雜了一些,將所有共享類庫都塞到一個系統目錄下,并且同一個類庫還有n個版本,將來.Net第三方開發的類庫逐漸豐富起來以后,.Net類庫的GAC也會越來越龐大,會不會也搞得和Windows注冊表一樣難以維護?軟件發布到服務器上的時候,類庫要再注冊一次,服務器會逐漸形成一個龐大的樹狀的GAC,GAC里面存放著組件的n個版本。試想經過一段時間之后,C:Winntassemblygac目錄會越來越龐大,有的組件甚至有n個版本都放在那里,你又不敢隨便刪除,不知道是不是有程序需要使用,我不明白MS為什么要把這么簡單的事情搞到這么復雜?
討論:全局程序集緩存不會是無限大的,所以“將來.Net第三方開發的類庫逐漸豐富起來以后,Net類庫的GAC也會越來越龐大,會不會也搞得和Windows注冊表一樣難以維護?”這是杞人憂天。原因如下:第一是操作系統的生命周期一般不會是無限長的,而且越來越短,Windows為證,同時.Net Framework也在不斷更迭,在十年左右的時間里,全球的程序產量是有限的,高質量的第三方開發的類庫更是有限,需要注冊到GAC的就更少了。
什么是JDK和JRE?它們的概念與區別分析
1.JRE是啥
先說JRE,在我們裝JDK的時候,經常會發現即安裝了JDK也安裝了JRE,也不知道他們有什么區別。
JRE(Java Runtime Environment)是JAVA運行時環境,它是運行已編譯Java程序所需的所有內容的集合,包括Java虛擬機(JVM),Java核心類庫和一些基礎的構件。
有些人認為如果是運行,那JVM不就夠了嗎,其實還不夠,因為在解釋class文件時,JVM需要調用解釋所需要的`類庫 lib。jre的安裝目錄下,里面有兩個文件夾bin和lib,籠統的分析下,這里可以認為bin里的就是jvm,lib中則是jvm工作所需要的類庫,而jvm和 lib合起來就稱為jre。
jre里有運行.class的java.exe文件,至于虛擬機則是jre安裝目錄/bin/server目錄下的jvm.dll文件
但是,它不能用于創建新程序。它只包括了運行的能力,不具備開發的能力,它無法將java文件編譯成.class字節碼文件,但是它可以直接跑.class字節碼文件,你在其他電腦上編譯好java程序,拿到僅有JRE環境的電腦也可以正常使用。
2.JDK是啥
JDK(Java Development Kit)是Java的開發工具包,它不僅提供了Java程序運行所需的JRE,還提供了一系列的編譯,運行等工具,如javac,java,javaw等。通過這里,我們可以明白三個J的包括關系了:JDK》JRE》JVM,所以我們在安裝JDK時,通常不需要考慮JRE,JVM之類的,只要你安裝好了JDK,其他兩個就都有了。
簡單列舉一下JDK包括的一些開發工具:
javac – 編譯器,將源程序轉成字節碼。
jar – 打包工具,將相關的類文件打包成一個文件。
javadoc – 文檔生成器,從源碼注釋中提取文檔。
jdb – debugger,查錯工具。
java – 運行編譯后的java程序(.class后綴的)。
appletviewer:小程序瀏覽器,一種執行HTML文件上的Java小程序的Java瀏覽器。
Javah:產生可以調用Java過程的C過程,或建立能被Java程序調用的C過程的頭文件。
Javap:Java反匯編器,顯示編譯類文件中的可訪問功能和數據,同時顯示字節代碼含義。
Jconsole: Java進行系統調試和監控的工具。
有時候還會有人提到SDK,SDK(Software Development Kit )是指軟件開發包,它不僅限于JAVA,很多軟件也有自己的SDK,更像一個統稱,是專門給第三方開發者提供的軟件開發工具集合。
所以SDK實際上和JDK沒啥直接聯系,SDK比較抽象,JDK則是具體指Java開發工具包,它們兩都不是一個次元的,硬要說的話,JDK可以被描述成Java開發的SDK。
【jre是什么】相關文章:
關于jre是什么01-12
win10安裝不了jre的怎么辦01-16
是什么年?是什么生肖年?01-17
表語是什么_英語表語是什么01-10
是什么年?是什么生肖年?02-08
拉拉褲是什么_成長褲是什么01-08
馬甲線是什么_人魚線是什么01-16
陳皮是什么01-10
生機是什么01-10