JVM虚拟机面试题(一)

1 简述JDK,JRE,JVM之间的关系?

一、JDK(Java Development Kit)

JDK(Java Development Kit),即Java开发工具包,是一个编写Java应用程序的开发环境。

JDK是整个Java的核心,包括了JRE(Java运行环境)与一些Java开发工具(例如:jconsole、javac、java、javadoc、native2ascii、jar等)。

JDK=JRE+Java开发工具(编译器、调试器等)。

jdk1.8目录包含:

bin:一堆exe文件,可执行的开发工具,最主要的是javac, 例如:jconsole、javac、java、javadoc、native2ascii。
jre:java运行环境,包括JVM+Java基础&核心类库 。
lib:包含dt.jar+tools.jar的常用类库,开发依赖包。
db:jdk从1.6之后内置了Derby数据库,它是是一个纯用Java实现的内存数据库,属于Apache的一个开源项目。用Java实现的,        所以可以在任何平台上运行;另外一个特点是体积小,免安装,只需要几个小jar包就可以运行了。
include:java和JVM交互用的头文件。

二、JRE(Java Runtime Environment)

JRE(Java Runtime Environment),即Java运行环境,支持Java程序运行的标准环境,包括了JVM(Java虚拟机)的标准实现以及Java基础&核心类库。

JRE=JVM+Java基础&核心类库。

jre1.8目录包含: