JDK一般用来开发Java应用和插件。基本上能够认为是一个软件开发环境。JDK包含Java Runtime Environment(JRE),JRE包含加载器/解释器,编译器(javac),文档生成器(Javadoc),打包功能(jar)和其它在开发中所须要功能:java
Java Runtime Environment(JRE)又称为Java RTE。JRE中包含核心类和支持文件。它还包含JVM。JVM会提供运行时环境。面试
JVM为执行Java字节码提供一个运行环境。它是一个抽象的独立于平台运行的机器。它的实现主要包含三个部分,描述JVM实现规格的文档,具体实现和知足JVM要求的计算机程序以及实例(具体执行Java字节码)。安全
JVM的主要任务包括:微信
为了了解JRE的功能,能够看一下是如何加载Example.class这个类的。该类先被转化为一组字节码并放入.class文件中。框架
ClassLoader将执行程序所需的每一个重要类放入堆栈中。它经过命名系统来提供彼此之间的安全性。源码能够来自于硬盘,系统以及其它来源。工具
JVM经过字节码校验器检查格式并找出非法代码。校验器确JVM执行代码时可以够快,以及这段代码不会损害现存的框架。spa
解释器有两个功能:插件
想要了解更多开发技术,面试教程以及互联网公司内推,欢迎关注个人微信公众号!将会不按期的发放福利哦~blog