概念
程序计数器是什么?
- 程序计数器是一块较小的内存单元,它可以看作是当前线程所执行的字节码的行号指示器
- 线程是一个独立的执行单元,是由
CPU
控制执行的 - 字节码解释器工作时就是通过计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程等基础功能都需要依赖这个计数器来完成
为何要用程序计数器?
- 为了线程切换后能恢复到正常的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间计数器互不影响,独立存储,我们称这类内存区域为“线程私有”的内存
特点
- 内存区域中唯一一个没有规定任何
OutOfMemoryError
情况的区域
查看Java
字节码
- 新建
User.java
文件如下:
public class User{
private String name;
public String getName(){
return this.name;
}
public void setName(String name){
this.name=name;
}
}
- 使用命令编译
User.java
文件 - 使用命令查看
Java
字节码文件