1. JDK、RE、JM分別代表什麼
JDK包含了java的運行環境(即JRE)和Java工具。JRE包含了一個Java虛擬機(JVM)以及一些標準的類別函數庫。總的來說,JDK、JRE、JVM三者都處在一個包含關系內,JDK包含JRE,而JRE又包含JVM。
JDK,全稱Java Development Kit,是 Java 語言的軟體開發工具包,主要用於移動設備、嵌入式設備上的Java應用程序。JDK是整個Java開發的核心。
JRE,全稱Java Runtime Environment,是指Java的運行環境,是可以在其上運行、測試和傳輸應用程序的Java平台。
JVM,全稱Java Virtual Machine(Java虛擬機),是一種用於計算設備的規范,它是一個虛構出來的計算機,引入JVM後,Java語言在不同平台上運行時不需要重新編譯。JVM是Java跨平台的核心。
2. 是不是安裝好了JDK就不要安裝JAVA虛擬機了/
是的,裝JDK就可以了,因為JDK包含Java虛擬機。
在JDK的安裝目錄下有一個jre目錄,裡面有兩個文件夾bin和lib,在這里可以認為bin里的就是jvm,lib中則是jvm工作所需要的類庫,而jvm和 lib合起來就稱為jre。
從這個層面上來看,在執行一個所謂的java程序的時候,真真正正在執行的是一個叫做Java虛擬機的進程,而不是我們寫的一個個的class文件。這個叫做虛擬機的進程處理一些底層的操作,比如內存的分配和釋放等等。我們編寫的class文件只是虛擬機進程執行時需要的「原料」。
這些「原料」在運行時被載入到虛擬機中,被虛擬機解釋執行,以控制虛擬機實現我們java代碼中所定義的一些相對高層的操作,比如創建一個文件等,可以將class文件中的信息看做對虛擬機的控制信息,也就是一種虛擬指令。

(2)jdkjava虛擬機擴展閱讀
編譯之後的class文件是作為Java虛擬機的原料被輸入到Java虛擬機的內部的。其實在Java虛擬機內部,有一個叫做類載入器的子系統,這個子系統用來在運行時根據需要載入類。注意上面一句話中的「根據需要」四個字。
在Java虛擬機執行過程中,只有他需要一個類的時候,才會調用類載入器來載入這個類,並不會在開始運行時載入所有的類。就像一個人,只有餓的時候才去吃飯,而不是一次把一年的飯都吃到肚子里。
總結:
1、虛擬機並不神秘,在操作系統的角度看來,它只是一個普通進程。
2、這個叫做虛擬機的進程比較特殊,它能夠載入我們編寫的class文件。如果把JVM比作一個人,那麼class文件就是我們吃的食物。
3、載入class文件的是一個叫做類載入器的子系統。就好比我們的嘴巴,把食物吃到肚子里。
4、虛擬機中的執行引擎用來執行class文件中的位元組碼指令。就好比我們的腸胃,對吃進去的食物進行消化。
5、虛擬機在執行過程中,要分配內存創建對象。當這些對象過時無用了,必須要自動清理這些無用的對象。清理對象回收內存的任務由垃圾收集器負責。就好比人吃進去的食物,在消化之後,必須把廢物排出體外,騰出空間可以在下次餓的時候吃飯並消化食物。
3. 已經安裝過jdk,為什麼打開eclipse時,還顯示沒有Java虛擬機
安裝過jdk之後,打不開eclipse,可能的原因如下:
1、沒有配置正確jdk的環境變數。重新檢查一下環境變數是否寫對。檢查你配置的JDK環境變數。
2、你安裝的eclipse是win32位的,jdk也要對應是32位的,否則也是啟動不了。
3、java -version查看java版本的命令JDK版本和eclipse的版本不匹配,導致無法載入。請確認jdk的位數。
4、eclipse的虛擬內存不夠,需要到配置文件裡面擴大虛擬內存大小。

拓展資料
虛擬機是一種抽象化的計算機,通過在實際的計算機上模擬模擬各種計算機功能來實現的。Java虛擬機有自己完善的硬體架構,如處理器、堆棧、寄存器等,還具有相應的指令系統。Java虛擬機屏蔽了與具體操作系統平台相關的信息,使得Java程序只需生成在Java虛擬機上運行的目標代碼(位元組碼),就可以在多種平台上不加修改地運行。
Java虛擬機(JVM)一種用於計算機設備的規范,可用不同的方式(軟體或硬體)加以實現。編譯虛擬機的指令集與編譯微處理器的指令集非常類似。Java虛擬機包括一套位元組碼指令集、一組寄存器、一個棧、一個垃圾回收堆和一個存儲方法域。
Java虛擬機(JVM)是可運行Java代碼的假想計算機。只要根據JVM規格描述將解釋器移植到特定的計算機上,就能保證經過編譯的任何Java代碼能夠在該系統上運行。
4. JAVA虛擬機和JDK是什麼關系.
Java虛擬機是一個想像中的機器,在實際的計算機上通過軟體模擬來實現。Java虛擬機有自己想像中的硬體,如處理器、堆棧、寄存器等,還具有相應的指令系統。
JDK (Java Development Kit)
JDK 是整個Java的核心,包括了Java運行環境(Java Runtime Envirnment),一堆Java工具和Java基礎的類庫(rt.jar)。不論什麼Java應用伺服器實質都是內置了某個版本的JDK。因此掌握 JDK是學好Java的第一步。最主流的JDK是Sun公司發布的JDK,除了Sun之外,還有很多公司和組織都開發了自己的JDK,例如IBM公司開發的JDK,BEA公司的Jrocket,還有GNU組織開發的JDK等等。其中IBM的JDK包含的JVM(Java Virtual Machine)運行效率要比Sun JDK包含的JVM高出許多。而專門運行在x86平台的Jrocket在服務端運行效率也要比Sun JDK好很多。但不管怎麼說,我們還是需要先把Sun JDK掌握好。
5. jdk java虛擬機
1.jdk實際上,看名字也能知道,他是開發工具包,其中包括了一些類庫,也就是API,還有就是java的虛擬機,因為java是半編譯,半解釋型的語言,他只是在解釋的的時候才涉及到操作系統的問題,也就是說如果哦是windows的系統,就需要windows下的解釋器,在linux下就用linux的解釋器,java的跨平台,實際上就是這個解釋器的跨平台,其中的類庫什麼,語法什麼都是一樣的
2.java跟硬體沒關系,只與你的操作系統有關系
3.2000和xp用的是一樣的,linux或者macOS(蘋果系統)和windows系統是不一樣的,需要按需求下載相應的
6. 1. JDK、JRE、JVM分別表示什麼意思。
JVM :JVM是Java Virtual Machine(Java虛擬機)的縮寫,它是整個java實現跨平台的最核心的部分,所有的java程序會首先被編譯為.class的類文件,這種類文件可以在虛擬機上執行,也就是說class並不直接與機器的操作系統相對應,而是經過虛擬機間接與操作系統交互,由虛擬機將程序解釋給本地系統執行。JVM是Java平台的基礎,和實際的機器一樣,它也有自己的指令集,並且在運行時操作不同的內存區域。 JVM通過抽象操作系統和CPU結構,提供了一種與平台無關的代碼執行方法,即與特殊的實現方法、主機硬體、主機操作系統無關。JVM的主要工作是解釋自己的指令集(即位元組碼)到CPU的指令集或對應的系統調用,保護用戶免被惡意程序騷擾。 JVM對上層的Java源文件是不關心的,它關注的只是由源文件生成的類文件(.class文件)。
JRE:JRE是java runtime environment(java運行環境)的縮寫。光有JVM還不能讓class文件執行,因為在解釋class的時候JVM需要調用解釋所需要的類庫lib。在JDK的安裝目錄里你可以找到jre目錄,裡面有兩個文件夾bin和lib,在這里可以認為bin里的就是jvm,lib中則是jvm工作所需要的類庫,而jvm和lib和起來就稱為jre。所以,在你寫完java程序編譯成.class之後,你可以把這個.class文件和jre一起打包發給朋友,這樣你的朋友就可以運行你寫程序了(jre里有運行.class的java.exe)。JRE是Sun公司發布的一個更大的系統,它裡面就有一個JVM。JRE就與具體的CPU結構和操作系統有關,是運行Java程序必不可少的(除非用其他一些編譯環境編譯成.exe可執行文件……),JRE的地位就象一台PC機一樣,我們寫好的Win32應用程序需要操作系統幫我們運行,同樣的,我們編寫的Java程序也必須要JRE才能運行。
JDK:JDK是java development kit(java開發工具包)的縮寫。每個學java的人都會先在機器上裝一個JDK,那 讓我們看一下JDK的安裝目錄。在目錄下面有六個文件夾、一個src類庫源碼壓縮包、和其他幾個聲明文件。其中,真正在運行java時起作用的是以下四個文件夾:bin、include、lib、jre。現在我們可以看出這樣一個關系,JDK包含JRE,而JRE包含JVM。
bin:最主要的是編譯器(javac.exe)
include:java和JVM交互用的頭文件
lib:類庫
jre:java運行環境
(注意:這里的bin、lib文件夾和jre里的bin、lib是不同的)總的來說JDK是用於java程序的開發,而jre則是只能運行class而沒有編譯的功能。eclipse、idea等其他IDE有自己的編譯器而不是用JDK bin目錄中自帶的,所以在安裝時你會發現他們只要求你選jre路徑就ok了。
7. jdk和java虛擬機的區別
JDK包含虛擬機和開發環境,具體解釋如下:
1.sdk和jdk和jre之間的區別:·SDK(Software Development Kit)一般指軟體開發包,可以包括函數庫、編譯程序等。
·JDK(Java Development Kit)是面向JAVA開發人員使用的SDK,它提供了Java的開發環境和運行環境。
·JRE(Java Runtime Enviroment)是指Java的運行環境,是面向Java程序的使用者,而不是開發者。
2.JRE
的地位就象一台PC機一樣,寫好的Win32應用程序需要操作系統運行,同樣的,編寫的Java程序也必須要JRE才能運行。所以裝完
JDK後,如果分別在硬碟上的兩個不同地方安裝了兩套JRE,那麼電腦有兩台虛擬的Java
PC機,都具有運行Java程序的功能。