Live2D

Java面试题 2022(Java字节码篇)

2. 什么是Java字节码?

Java 中的字节码,是值 Java 源代码编译后的中间代码格式,一般称为字节码文件。

2.1 字节码文件中包含哪些内容?

字节码文件中,一般包含以下部分:

  • 版本号- 信息
  • 静态常量池(符号常量)
  • 类相关的信息
  • 字段相关的信息
  • 方法相关的信息
  • 调试相关的信息-
    可以说,大部分信息都是通过常量池中的符号常量来表述的。

2.2 什么是常量?

常量是指不变的量,字母K 或者数字1028 在UTF8编码中对应到对应的二进制
格式都是不变的。同样地,字符串在Java中的二进制表示也是不变的, 比如 。
在Java中需要注意的是,final 关键字修饰的字段和变量,表示最终变量,只能赋
值1次,不允许再次修改,由编译器和执行引擎共同保证。

2.3 你怎么理解常量池?

在Java中,常量池包括两层含义:

  • 静态常量池,class文件中的一个部分,里面保存的是类相关的各种符号常量。
  • 运行时常量池, 其内容主要由静态常量池解析得到,但也可以由程序添加。
posted @ 2022-09-09 11:14  键盘命  阅读(64)  评论(0编辑  收藏  举报