1. 程式人生 > >針對初學者瞭解JVM、JRE和JDK三者間的區別和聯絡

針對初學者瞭解JVM、JRE和JDK三者間的區別和聯絡

      首先說Java程式語言,它是一門高階程式語言,具體由誰何時建立的,讀者可以到網上查詢相關資料,這裡就不再贅述。那麼,談到Java就不得不談談JVM、JRE和JDK三者間的區別和聯絡。

      JVM:英文全稱Java Virtual Machine,字面意思“Java虛擬機器”,簡單來說就是一個軟體。一個什麼軟體呢?一個可以執行Java的軟體。我們在將.java編譯後,會生成相應的.class檔案,那麼,問題來了,什麼問題呢?就是這個.class檔案怎麼執行?執行在哪裡?答案就是JVM。JVM就是載入並執行.class檔案的軟體。

JRE:英文全稱Java RuntimeEnviromental

字面意思“Java執行時的環境”,簡單來說就是一個平臺。一個什麼平臺呢?一個專門執行Java程式的平臺。它包括了JVM和Java的一些常用的類庫,JVM就是上面所說的Java虛擬機器,而類庫就是我們在編寫好Java程式後所依賴的核心類和支援檔案,沒有這些類庫,我們編寫好Java程式就沒法正常執行,可以說JRE是執行Java程式的最小環境 

      JDK:英文全稱Java Development ToolKit,即Java開發工具包,它除了包括JRE和JVM外,還包括java(用於執行.class檔案)、javac(用於將.java檔案編譯成.class檔案)等工具,這些工具能夠很好地幫助我們進行Java開發。

        那麼說到這裡,大家對JDK、JRE和JVM間的關係應該有了一個直觀的認識了吧。

相關推薦

針對初學者瞭解JVMJREJDK三者區別聯絡

      首先說Java程式語言,它是一門高階程式語言,具體由誰何時建立的,讀者可以到網上查詢相關資料,這裡就不再贅述。那麼,談到Java就不得不談談JVM、JRE和JDK三者間的區別和聯絡。       JVM:英文全稱Java Virtual Machine,字面意思

JVM JRE JDK三者區別聯系

基本上 聲明 asc 避免 awt 核心 jdk 不用 如果 一、 詳細介紹1、JVM -- java virtual machineJVM就是我們常說的java虛擬機,它是整個java實現跨平臺的 最核心的部分,所有的java程序會首先被編譯為.class的類文件,這種類

JVMJREJDK簡介

一、 JVM        JVM(Java Virtual Machine),是架構在Linux、Windows等各種作業系統平臺之上的一種虛擬的機器。        它為所有編譯程式提供一個共同的介面,編譯程式只需要面向虛擬機器,生成虛擬機器能夠理解的程式碼,然後由直譯

JVMJREJDK的關係

最開始學 Java 的時候不是很在意這些比較基礎的東西,只是知道怎麼使用。現在學得有些日子了,雖然也不是很清楚底層的具體實現,但是對於整個體系的搭建大致有了一些瞭解。最近由於找到工作了比較鬆懈,而且也在考駕照,所以有些日子沒學習了。今天一時想起,把之前的筆記整理了一下,順便

JAVA學習筆記系列3-JVMJREJDK區別

JVM(Java Virtual Machine)就是一個虛擬的用於執行bytecode位元組碼的“虛擬計算機”。它和os打交道 JRE(Java Runtime Environment)包含:Java虛擬機器、庫函式、執行java應用程式所必須的檔案。它包含了JVM JDK(Java Developme

理解JVMJREJDK

JVM    JVM,全稱為Java Virtual Machine,中文的意思是:Java虛擬機器。   在理解Java虛擬機器這個定義之前,我們先講講為何叫虛擬機器呢?稱為虛擬機器,顧名思義,它應該不是真實存在的。那它是什麼呢?在這裡,我們把它理解為一種規範(就像

簡述JVMJREJDK的關系及作用

java程序 虛擬 不能 window jvm 運行 ron 作用 虛擬機 1、JVM:java虛擬機 。     作用:保證java語言跨平臺。 2、JRE:java運行環境 jre=java虛擬機+核心類庫。     作用:java程序的運行環境。 3、JDK :jav

第一記-JVMJREJDK

高階語言分編譯語言和解釋語言。 編譯是編譯器把原始碼編譯成本地機器可識別的機器碼,只需執行一次,程式執行速度快,然而不可移植到其它平臺。 解釋在每次程式執行時都進行一次編譯,可以移植到其它平臺,程式執行速度變慢。 java語言是將原始碼(以.java結尾的檔案)轉換為位元組碼檔案(.class),然後由

Java基礎(一)——JVMJREJDKJavac等

Life is like a box of chocolates,you never konw what you're going to get. 在大學的時候已經學習過java,但是對java瞭解的越多越發現自己越來越不瞭解java。這有點像自以為擁有了整

JVMJREJDK區別聯絡

JVM:字面意思是java虛擬機器,它是用來載入並執行.class檔案的軟體JRE:字面意思是java執行時環境,它包含JVM和一些常用的類庫,類庫就是我們在編寫好java程式後所依賴的核心類和支援檔

JVM,JREJDK三者關係

JVM: Java Virtual Machine(Java虛擬機器),負責執行符合規範的Class檔案 JRE: Java Runtime Environment(java執行環境),包含JVM和類庫 JDK: Java  Deve

JVMJREJDK相關概念

www. 語言 java基礎 使用 ica java開發工具 devel j2e 開發者 **轉載** 文章出處 https://www.cnblogs.com/zhangzongxing01/p/5559126.html JDK(Java Development

JVMJreJdksdk關係

JVM: Java虛擬機器(Java Virtual Machine 簡稱JVM)是執行所有Java程式的抽象計算機,是Java語言的執行環境,它是Java 最具吸引力的特性之一。jvm是java針對不同平臺編寫的編碼解析工具,能將java程式碼編譯為位元組碼。這是java跨

java的幾個版本以及jvmjrejdkJava SEJava EEJava ME

哈哈還沒有展開它們的子選項呢,讓人眼花繚亂,下面介紹大家使用的比較廣泛的名詞吧: (一)J2SE Java2平臺標準版(Java2 Platform Standard Edition),主要面向個人PC桌面應用程式開發,其中包括: 1、Java執行環境(Java Runtime Environment, JR

shellcmddos腳本語言區別聯系

同時 environ 正常 erl urn exe comm displays 進行 問題一:DOS與windows中cmd區別 在windows系統中,“開始-運行-cmd”可以打開“cmd.exe”,進行命令行操作。 操作系統可以分成核心(kernel)和Shell

C#中數組ArrayListList三者區別

collect comm 兩個 根據 -s lis 數據打包 功能 target 在C#中數組,ArrayList,List都能夠存儲一組對象,那麽這三者到底有什麽樣的區別呢。 數組 數組在C#中最早出現的。在內存中是連續存儲的,所以它的索引速度非常快,而且賦值

C++知識回顧之__stdcall__cdcel__fastcall三者區別

進行 pan span number 適用於 編譯器 api num 處理 __stdcall、__cdecl和__fastcall是三種函數調用協議,函數調用協議會影響函數參數的入棧方式、棧內數據的清除方式、編譯器函數名的修飾規則等。 調用協議常用場合 __stdca

stringEmptynull三者區別

指向 空間 AD dst rar 取出 能力 討論 字段 本文轉自 http://www.cnblogs.com/mxxblog/archive/2013/08/22/3275387.html 這是一個及其常見的問題,網上已經有關於這個問題的很多討論。但是我覺得都是不求甚

機器學習中目標函數損失函數代價函數之間的區別聯系

最好 reg ecc 期望 raw 擬合 data- ati 最優 首先給出結論:損失函數和代價函數是同一個東西,目標函數是一個與他們相關但更廣的概念,對於目標函數來說在有約束條件下的最小化就是損失函數(loss function) 舉個例子解釋一下:(圖片來自Andre

webpack 3之hashchunkhashcontenthash三者區別

就是 區別 生成 用法 pac put 覆蓋 一個 失效 在使用webpack 3中,文件名的hash值可以有三種hash生成方式,那具體使用哪一種呢? 1.hash 如果都使用hash的話,所有文件的hash都是一樣的,而且每次修改任何一個文件,所有文件名的hash至都將