第一部分:Java技术体系
Java发展史
Java技术体系
Java技术体系包括以下几个组成部分:
①Java程序设计语言
②各种硬件平台上的JVM实现
③Class文件格式
④Java类库API
⑤来自商业机构和开源社区的第三方Java类库
JVM家族
VM与JVM
虚拟机(Virtual Machine)
虚拟机(virtual Machine):
- 就是一台
虚拟的计算机
; - 它是一款
软件
,用来执行一系列虚拟计算机指令; - 分为
系统虚拟机
和程序虚拟机
- 无论是系统虚拟机还是程序虚拟机,在上面运行的软件都被
限制于虚拟机提供的资源中
。
系统虚拟机
如Visual Box,VMware就属于系统虚拟机,它们完全是对物理计算机的仿真
,提供了一个可运行完整操作系统的软件平台。
程序虚拟机
典型代表就是Java虚拟机,它专门为执行单个计算机程序而设计
,在Java虚拟机中执行的指令我们称为Java字节码指令
。
JVM
Java虚拟机是一台执行Java字节码命令
的虚拟计算机,它拥有独立的运行机制,其运行的Java字节码也未必由Java语言编译而成。
JVM平台的各种语言可以共享Java虚拟机带来的跨平台性
、优秀的垃圾回器,以及可靠的即时编译器。
Java技术的核心就是Java虚拟机(JVM,Java virtual Machine)因为所有的Java程序都运行在Java虚拟机内部
。
JVM作用
Java虚拟机就是二进制字节码的运行环境,负责装载字节码到其内部,解释/编译为对应平台上的机器指令执行
。每一条Java指令Java虚拟机规范中都有详细定义,如怎么取操作数,怎么处理操作数,处理结果放在哪里。
JVM特点
- 一次编译,到处运行自动内存管理(
Wirte Once,Run Anywhere
) 自动管理内存
,垃圾自动回收