字节码指令
查看javac版本:
--> cmd --> Javac -version
查看java版本:
--> cmd --> Java -version
反编译指令:
--> javap -c 类名.class
--> javap -v 类名.class
字节码文件在不同操作系统中有相同的指令集合,但是不同的操作系统的JVM虚拟机是不一样的
平台:操作系统
跨平台:在不同的操作系统当中,存在不同的Java虚拟机(JVM) 不同的]ava虚拟机,解析相同的字节码指令。
JVM虚拟机:
方法区:
堆:
虚拟机栈:
程序计数器: 记录当前执行"字节码指令"的下一条指令的编号
本地方法栈: 与本地方法接口对接 交互计算机硬件
java文件反编译字节码文件之后 产生的二进制信息是由:
- 类的基本信息: 一些基本的字节码信息
- 常量池:
【1】常量池含义介绍
常量池就是一张表,ava虚拟机指令会根据这张常量池表找到需要执行的类名称,方法名称,参数类型,字面量等信息
【2】运行时常量池介绍
常量池是.c1ass文件中的,当该类被加载的时候,它的常量池信息,就会存放在运行时常量池当中,并且将里面的符号
地址转变成为真实值
- 类的方法定义(包括虚拟机的指令):括号内包含的内容
- 串池的介绍:
串池就是字符串常量池。它里面的字符串元素是唯一存在的。每次出现新的字符串时候,就会先查找,是否存在,再做添加操作。