JDK、JRE、JVM的区别与联系

  • JVM -- java virtual machine      JVM就是我们常说的java虚拟机,它是整个java实现跨平台的 最核心的部分,所有的java程序会首先被编译为.class的类文件。
  • JVM的工作流程:
  • 1、编写源文件(.java)
  • 2、通过编译器javac。将源文件编译成*.class字节码文件
  • 3、类加载器:先加载启动类库,在加载扩展类库,最后加载用户自定义类库
  • 4、字节码校验器,校验不通过,产生异常
  • 5、解释器:解释为机器代码,跨平台
  • 6、操作系统
  •       JVM 的主要工作是解释自己的指令集(即字节码)到 CPU 的指令集或 OS 的系统调用,保护用户免被恶意程序骚扰。 JVM 对上层的 Java 源文件是不关心的,它关注的只是由源文件生成的类文件( class file )。类文件的 组成包括 JVM 指令集,符号表以及一些补助信息。

 

  •       JRE -- java runtime environment      JRE是指java运行环境。光有JVM还不能成class的 执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。 在JDK的安装目 录里你可以找到jre目录,里面有两个文件夹bin和lib,在 这里可以认为bin里的就是jvm,lib中则是jvm工 作所需要的类库,而jvm和 lib和起来就称为jre。所以,在你写完java程序编译成.class之后,你可以把这个.class文件 和jre一起打包发给朋友,这样你的朋友就 可以运行你写程序了。 JRE 是运行 Java 程序必不可少的。
  • 注意由于Microsoft对Java的支持不完全,请不要使用IE自带的虚拟机来运行 Applet,务必安装一个JRE或JDK        

 

 

  •        JDK -- java development kit      JDK是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而没有编译的功能。     。

 

  •  

原文地址:https://www.cnblogs.com/wanggang1987/p/12030308.html

时间: 2024-10-09 03:50:53

JDK、JRE、JVM的区别与联系的相关文章

JDK,JRE,JVM的区别与联系

很多朋友跟我一样,已经使用Java开发很久了,可是对JDK,JRE,JVM这三者的区别与联系一直都是模模糊糊的,下面我们来总结一下. JDK Java Development ToolKit(Java开发工具包).JDK是整个Java的核心,包括了Java运行环境(Java Runtime Environment),一堆Java工具(javac/java/jdb)和Java基础类库(即Java API包括rt.jar).最流行的JDK是sun公司发布的JDK,除了sun之外,还有好多公司和组织都

JDK,JRE,JVM的区别

在lua,cocos-2d的开发中,需要用到java的东东,这些东东之间的联系往往不是很清楚明了,于是整理了下... 下图很好的表面了JDK,JRE,JVM三者间的关系: JDK Java Development Kit(JDK) 是 Java 语言的软件开发工具包(SDK).作为Java语言的SDK,普通用户并不需要安装JDK来运行Java程序,而只需要安装JRE(Java Runtime Environment).而程序开发者必须安装JDK来编译.调试程序. SE(J2SE),standar

你知道JDK,JRE,JVM的区别吗?

JVM(Java Virtual Machine Java虚拟机) 可以理解为是一个虚拟出来的计算机,具备着计算机的基本运算方式, 它主要负责将java程序生成的字节码文件解释成具体系统平台上的机器指令. 让具体平台如window运行这些Java程序. JRE(Java Runtime Environment Java运行环境) 包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等, 如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即

Java初学者不得不知的概念,JDK,JRE,JVM的区别?

JVM(Java Virtual Machine Java虚拟机) 可以理解为是一个虚拟出来的计算机,具备着计算机的基本运算方式, 它主要负责将java程序生成的字节码文件解释成具体系统平台上的机器指令. 让具体平台如window运行这些Java程序. JRE(Java Runtime Environment Java运行环境) 包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等, 如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即

Java初学者不得不知的概念,JDK,JRE,JVM的区别?(转)

JVM(Java Virtual Machine Java虚拟机)可以理解为是一个虚拟出来的计算机,具备着计算机的基本运算方式,它主要负责将java程序生成的字节码文件解释成具体系统平台上的机器指令.让具体平台如window运行这些Java程序. JRE(Java Runtime Environment Java运行环境)包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可. JD

[javase基础] JDK JRE JVM的区别?

JDK Java Development Kit 用作开发, 包含了JRE,编译器和其他的工具(比如: JavaDoc,Java调试器),可以让开发者开发.编译.执行Java应用程序. JRE Java 运行时环境,是将要执行 Java 程序的 Java 虚拟机,可以想象成它是一个容器,JVM 是它的内容. JRE = JVM + Java Packages Classes(like util, math, lang, awt, swing etc) + runtime libraries. J

JDK,JRE,JVM的区别与关系

JDK:           Java Develpment Kit java 开发工具JRE:         Java Runtime Environment java运行时环境JVM:        java Virtual Machine java 虚拟机使用人群         jdk 是给开发人员使用的, jre和jvm是给普通用户使用3. 详细介绍JDK:         是java开发工具包,是Sun公司针对java开发人员的产品,jdk中包含jre,在jdk的安装目录下有一个j

JDK JRE JVM 的区别和联系

1.JDK -- java development kit JDK是java开发工具包,基本上每个学java的人都会先在机器安装JDK ,在JDK目录下面有 六个文件夹.一个src类库源码压缩包.和其他几个声明文件.其中,真正在运行java时起作用的 是以下四个文件夹:bin.include.lib. jre.bin:最主要的是编译器(javac.exe)include:java和JVM交互用的头文件lib:类库jre:java运行环境 JDK有以下三个版本 SE(J2SE),standard

4/2/2017 Sun.(Week1,01Day) dos命令,jdk&jre&jvm的关系,classpath和path区别

一.学习方法 1.独立思考 2.独立整理.总结知识点 3.整理Exception报错文档 4.莫钻牛角尖 5.敲代码,敲,猛敲,死里敲 一句话:"代码虐我千百遍,我视代码如初恋!!!" 二.常用dos命令 1.start:重新打开一个dos命令窗口 2.exit:退出dos命令窗口 3.cd:显示或进入指定目录 4.cls:清屏   5.dir:遍历并罗列当前目录下的文件和文件夹 6.help:罗列所有的dos命令 (注:①↑或↓:切换历史命令 ②. :当前目录 ③.. :上层目录 ④

JRE,JDK,JVM的区别

JRE,JDK,JVM的区别JRE是Java Runtime Environment缩写,指Java运行环境,里面包含Java虚拟机,Java基础类库.不包含开发工具JDK.JDK是Java语言的软件开发工具包.主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具. JDK包含了JRE,同时还包括java源码的编译器javac.监控工具jconsole.分析工具jvisualvm等.JVM是Java