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,JRE,JVM三者关系概括如下:

jdk是JAVA程序开发时用的开发工具包,其内部也有JRE运行环境JRE。JRE是JAVA程序运行时需要的运行环境,就是说如果你光是运行JAVA程序而不是去搞开发的话,只安装JRE就能运行已经存在的JAVA程序了。JDk、JRE内部都包含JAVA虚拟机JVM,JAVA虚拟机内部包含许多应用程序的类的解释器和类加载器等等。

标签智能推荐:

java三大版本

java三大版本WriteOnce,RunAnywhere。JavaSE:标准版(桌面程序,控制台开发......)JavaME:嵌入式开发(手机,小家电......)JavaEE:E企业级开发(web端,服务器开发......)JavaSE是学习JavaEE的基础,JavaME几乎死掉了,没有多少人学习。JDK,JRE,JVMJDK:JavaDevelopmentKitJava开发工具包JRE:

Java 入门笔记(转载)

Java入门笔记Java特性和优势简单性面向对象模拟人的思维可移植性跨平台writeoncerunanywhere高性能分布式URL访问网络资源很方便动态性反射多线程更好的交互安全性健壮性异常机制避免崩溃Java三大版本JavaSE标准版:基础与核心JavaME嵌入式开发(基本无了)JavaEE企业级开发JDK,JRE,JVMJDKJavaDevelopmentKit(java开发者工具)包含了J

Java的特性和优势+三大版本

Java的特性和优势简单性面向对象可移植性(writeonerunanywhere写一次到处运行)高性能分布式动态性多线程安全性健壮性Java三大版本Java三大版本WriteOnce、RunAnywherejvm(Java虚拟机可以实现跨平台)JavaSE:标准版(桌面程序,控制台开发.....)可以做个小游戏,如扫雷JavaME:嵌入式开发(手机,小家电......)没人用了现在基本上Java

java入门

java入门从入门到放弃,哈哈1.java的三大版本javaSE:java标准版(javastandardedition),适合开发桌面应用,控制台应用javaME:java迷你版(javamicroedition),适合开发手机小家电等嵌入式开发javaEE:java企业版(javaenterpriseedition),适合web开发,服务器开发2.JDKJREJVMJDK:(javadevel

初学Java——JVM, JRE, JDK之间的区别(1.1-1.4)

只是要运行Java程序,下载程序安装()即可。A.JDK  B.JRE  C.JavaDoc  D.Glassfish答案:B。 5.JDK与Eclipse的关系JDK是Java语言的软件开发工具包,主要用于移动设备、嵌入式设备上的Java应用程序。JDK是整个Java开发的核心,它包含了JAVA的运行环境(JVM+Java系统

JAVA语言简介

1.JAVA由来JAVA语言在1995年美国SUN公司发布,詹姆斯·高斯林为“JAVA之父”。2.JAVA版本JAVA分为JAVASE,JAVAME,JAVAEE。分类JAVASE JAVAME JAVAEE规模  标准、基础 小型企业开发 适用 桌面开发嵌入式设备 网站+后台+服务器 3.平台与跨平台平台:

jdk与jre的区别

ion,主要用于移动设备、嵌入式设备上的java应用程序,从JDK5.0开始,改名为JavaME。没有JDK的话,无法编译Java程序(指java源码.java文件),如果想只运行Java程序(指class或jar或其它归档文件),要确保已安装相应的JRE。JRE是什么Java运行环境(JavaRuntimeEnvironment,简称JRE)是一个软件,由太阳微系统所研发,JRE可以让计算机系统

Java基础(3)-JDK、JREJVM区别与联系

tKit,Java开发工具包) ,是整个JAVA的核心,包括了Java运行环境JRE(JavaRuntimeEnvirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库),包含JVM标准实现及Java核心类库。JRE(JavaRuntimeEnvironmentJava运行环境) ,是JDK的子集,也就是包括JRE所有内容,以及开发应用程序所需

Java学习第三天 了解并下载安装配置Java

Java三大版本JavaSE:标准版(桌面程序,控制台开发…)JavaME:嵌入式开发(手机,家电…)JavaEE:E企业级开发(web端,服务器开发…)JDK、JRE、JVMJDK:JavaDevelopmentKit(Java开发者工具)JRE:JavaRuntimeEnvironment(Java运行环境)JVM:JavaVirtualMachine(Java虚拟机)JDK包含JRE,JRE

认识java

java认识java发展---------服务器端开发#####javaSE-->javaME-->javaEE 三高高可用,高并发,高性能 java特性,优势*简单性*面向对象万物皆对象*可移植性一次编写,到处调用--------跨平台特性*高性能*分布式*动态性*多线程*安全性*健壮性异常机制 java三大版本*JavaSE:标准版(桌面程序,控制台开