1.JVM-了解JVM

JVM

定义:

Java Virtual Machine - java 程序的运行环境(java二进制字节码的运行环境)

好处:

  • 一次性编写,到处运行
  • 自动内存管理,垃圾回收功能
  • 数组下标越界检查(如果没有此检查,数组新元素可能会覆盖内存中别的信息)
  • 多态

比较:

jdk(Java Development Kit)、jre(Java Runtime Environment)、jvm
在这里插入图片描述

常见的JVM

常见的JVM

JVM组成部分

在这里插入图片描述

  一个java源代码编译为java二进制字节码,经过类加载器,才能被加载到JVM里运行

Method Area(方法区):类放在此处。

Heap(堆):类创建的实例对象放在此处。
  堆里面的对象在调用方法时会用到虚拟机栈(JVM Stacks)程序计数器(PC Register)本地方法栈(Native Method Stacks)

  方法执行时每行代码,是由执行引擎中的解释器(Interpreter) 逐行进行执行的;方法里的热点代码(被频繁调用的代码)会由即时编译器(JIT Compiler) 做编译(优化后的执行)

GC(garbage collection垃圾回收):会对堆中不再被引用的对象进行垃圾回收。

本地方法接口:可以调用操作系统提供的功能方法。