Java虚拟机详解01—-初识JVM

 

注重内容如下:

  • JVM的概念
  • JVM发展历史
  • JVM种类
  • Java语言专业
  • JVM规范

一、JVM的概念:

JVM:

  Java Virtual Machine,意为Java虚拟机。

虚拟机:

  指通过软件模拟的拥有完整硬件系统机能的、运营在三个通通隔离环境中的完整总计机体系

有怎么着虚拟机:

VMWare、Virtual Box:都以选择软件模拟物理CPU的指令集

JVM:使用软件模拟Java 字节码的指令集

 

② 、JVM发展历史:

1、Java发展史:

  • 1996年:SUN JDK 1.0 Classic VM

    纯解释运作,使用外挂举行JIT

  • 1997年:JDK1.1 发布

    AWT、内部类、JDBC、RMI、反射

  • 1998年:JDK1.2 Solaris Exact VM

    JIT 解释器混合    

    Accurate Memory Management 精确内部存款和储蓄器管理,数据类型敏感

    提升了GC性能

    注:JDK1.2起头,称为Java 2,于是有了J2SE J2EE J2ME
的产出,同时参与Swing Collections。

  • 3000年:JDK 1.3,Hotspot 作为暗许虚拟机发布

    加入JavaSound

  • 2003年:JDK 1.4【Java真正走向成熟的1个版本】,Classic
    VM退出历史舞台

    到场:Assert  正则表明式  NIO  IPV6  日志API  加密类库

  • 二〇〇一年:JDK 1.5【至关心保护要的本子】。即 JDK5 、J2SE 5 、Java 5

泛型

style=”line-height: 1.5; background-color: initial;”>注解

style=”line-height: 1.5; background-color: initial;”>枚举

style=”line-height: 1.5; background-color: initial;”>自动装箱

style=”line-height: 1.5; background-color: initial;”>可变长参数

style=”line-height: 1.5; background-color: initial;”>Foreach循环

  • 2006年:JDK 1.6发布,JDK6

脚本语言扶助

JDBC
4.0

style=”line-height: 1.5; background-color: initial;”>Java编译器
API

  • 2011年:JDK7发布

贻误项素不相识产到JDK8

style=”line-height: 1.5; background-color: initial;”>G1(全新的GC收集器)

style=”line-height: 1.5; background-color: initial;”>动态语言增强

style=”line-height: 1.5; background-color: initial;”>陆12位系统中的压缩指针

NIO
2.0

  • 二〇一四年:JDK8发表【首要的版本】

Lambda表达式

语法增强 
Java类型注脚

  • 二〇一四年:安排公布JDK9

    模块化

 

贰 、重庆大学历史事件:

  • 采用最为普遍的JVM为HotSpot

    HotSpot 为Longview Technologies开发,被SUN收购

  • 2006年:Java开源,并建立OpenJDK

    HotSpot  成为Sun JDK和OpenJDK中所带的虚拟机

  • 2008年:Oracle收购BEA

    得到JRockit VM

  • 二零零六年11月三日:Oracle集团专业公布以74亿加元的价格购回Sun集团。  

得到Hotspot

  • Oracle发布在JDK8时整合J罗克it和Hotspot,将那四款不错的虚拟机取长补短,最终融为一炉。

    在Hotspot基础上,移植J罗克it优异本性

 

三、JVM种类:

1、KVM:

SUN发布

IOS Android兴起此前,广泛用于手提式无线话机系统

2、CDC/CLDC HotSpot:

手提式有线电话机、电子书、PDA等装备上树立联合的Java编制程序接口

J2ME的首要组成部分

3、JRockit:

  BEA 

4、IBM J9 VM:

  IBM内部

5、Apache Harmony:

协作于JDK 1.5和JDK 1.6的Java程序运转平台

与Oracle关系恶劣,退出JCP ,Java社区的分崩离析

OpenJDK出现后,受到挑衅,二〇一一年退役

从不常见商用经历

对Android的迈入有主动作效果用

 

四 、Java语言专业:

Java语言专业重点呈将来以下几点:

  • 语法
  • 变量
  • 类型
  • 文法

 

五、JVM规范:

JVM首要定义二进制class文件和JVM指令集等。

JVM语言专业重点反映在以下几点:

  • Class文件类型
  • 运行时数据
  • 帧栈
  • 虚拟机的启航
  • 虚拟机的指令集

除此以外,JVM供给对Java Library
提供以下协助:(因为这个事物没有办法通过java语言本身来贯彻)

  • 反射 java.lang.reflect
  • ClassLoader
  • 初始化class和interface
  • 安然有关 java.security
  • 多线程
  • 弱引用

 

相关文章