# Java虚拟机
# 概述
- 内存与垃圾回收
- JVM与java体系结构
- 类加载子系统
- 运行时数据区概述及线程
- 程序计数器
- 虚拟机栈
- 本地方法接口
- 本地方法栈
- 堆
- 方法区
- 直接内存
- 执行引擎
- StringTable
- 垃圾回收器概述
- 垃圾回收器相关算法
- 垃圾回收器相关概念
- 垃圾回收器
- 字节码与类加载
- 性能监控与调优
- 面试
# 简介
- Java虚拟机是一台执行Java字节码的虚拟计算机,它拥有独立的运行机制,其运行的Java字节码也未必由Java语言编译而成。
- JVM平台的各种语言可以共享Java虚拟机带来的跨平台性、优秀的垃圾回收器,以及可靠的即时编译器。
- Java技术的核心就是Java虚拟机,因为所有的Java程序都运行在Java虚拟机内部。
# 作用
Java虚拟机就是二进制字节码的运行环境,负责装载字节码到其内部,解释/编译为对应平台上的机器指令执行。每一条Java指令,Java虚拟机规范中都有详细定义,如怎么取操作数,怎么处理操作数,处理结果放在哪里。
# 特点
- 一次编译,到处运行
- 自动内存管理
- 自动垃圾回收功能
# JVM 位置

特点:
- 方法区和堆是多个线程共享的
- java栈(虚拟机栈)、本地方法栈、程序计数器是每个线程独有一份
# JVM 架构
