JDK与JRE的区别
1.JVM -- java virtual machineJVM就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行,也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。
2.JRE -- java runtime environmentJRE是指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)
3.JDK -- java development kitJDK是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了。
- JAVA学习笔记二之(6)运算符②
- windows 中使用hbase 异常:java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
- 成为Java高手的25个学习要点
- java 二进制和十六进制的互转
- java中16位或32位MD5加密
- 《java入门第一季》之LinkList模拟桟结构案例
- Eclipse常用快捷键
- XML 和 java对象相互转换
- 用Ant实现Java项目的自动构建和部署
- quartz-springMVC实现方式 -springboot实现方式
- java中Executor、ExecutorService、ThreadPoolExecutor介绍
- 如何把安全证书导入到java中的cacerts证书库
- Java设计模式(三):工厂模式(简单工厂模式、工厂方法模式、抽象工厂模式)
- Java中JDK安装以及环境变量设置
- myeclipse maven 安装
- 基于MVC模式的应用框架之struts
- Java Blob类型和String类型相互转换
- Java的keytool命令都有哪些用途?
- Java类型后面的3个点的含义
- Java中Vector ArrayList LinkedList之间的区别与联系