Java JVM、JDK、JRE、Java三大体系知识串联

最近LZ在巩固自己Java的基础知识, 看到上面的那些知识时还是难以一时完全地掌握,现在将它们做一个整体的收集和整理,看起来就清晰多了,下面写下来与大家共享。
## Java JVM ##
首先是JVM(Java virtual Machine)是java虚拟机的简称,JVM是可以利用实际的计算机进行仿真的模拟运算,拥有自己完善的硬件架构,它将.class的指令集(字节码)编译成机器语言,以便机器识别(主要文件-解释自己的指令集并映射到CPU的指令集中进行调用),这里也能体现出Java JVM 跨平台的特点,即不同的系统对应于不同的JVM映射地址。
下面贴出JVM的架构图!
Java JVM、JDK、JRE、Java三大体系知识串联_第1张图片

[Java JVM原理图来源](https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=589651432,1459728255&fm=23&gp=0.jpg)

## Java JDK、JRE的关系 ##

Java JVM、JDK、JRE、Java三大体系知识串联_第2张图片

## Java的三大体系 ##
以前的Java三大体系叫J2ME、J2SE、J2EE,现在叫做Java ME、Java SE和Java EE,区别如下:

  1. Java ME(Java Platform,Micro Edition)。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。
  2. Java SE(Java Platform,Standard Edition)。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。
  3. Java EE(Java Platform,Enterprise Edition)。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。

LZ自己比对研究完以上内容收获甚多,对Java的运行机制有了更深的理解,Java作为高级语言的一种,我认为JVM无疑是它的核心所在,多做了解对平时的开发会有很多帮助。加油吧,Alien_Zhang。

你可能感兴趣的:(Java基础)