写点什么

Java 开发必须掌握!Java 虚拟机(JVM

发布于: 2 小时前


为了便于理解,我将一个完整的表划分为以下七个部分,它们构成了一个完整的类字节码文件:


  • 魔数与 Class 文件版本

  • 常量池

  • 访问标志

  • 类索引、父类索引、接口索引

  • 字段表集合

  • 方法表集合

  • 属性表集合


在开始之前,让我们写一个简单的介绍你好世界。接下来,我们将以 Hello World 文件的已编译字节码文件为例,解析字节码文件的内容。



public class Demo{
public static void main(String args[]){
System.out.println("Hello World.");
}
}
复制代码


然后运行 javac Demo.命令行上的 Java 命令编译类,生成一个演示。类文件。


然后我们使用纯文本编辑器打开生成的 Demo。类文件。



cafe babe 0000 0034 001d 0a00 0600 0f09
0010 0011 0800 120a 0013 0014 0700 1507
0016 0100 063c 696e 6974 3e01 0003 2829
5601 0004 436f 6465 0100 0f4c 696e 654e
756d 6265 7254 6162 6c65 0100 046d 6169
6e01 0016 285b 4c6a 6176 612f 6c61 6e67
2f53 7472 696e 673b 2956 0100 0a53 6f75
7263 6546 696c 6501 0009 4465 6d6f 2e6a
6176 610c 0007 0008 0700 170c 0018 0019
0100 0b48 656c 6c6f 2057 6f72 6c64 0700
1a0c 001b 001c 0100 0444 656d 6f01 0010
6a61 7661 2f6c 616e 672f 4f62 6a65 6374
0100 106a 6176 612f 6c61 6e67 2f53 7973
7465 6d01 0003 6f75 7401 0015 4c6a 6176
612f 696f 2f50 7269 6e74 5374 7265 616d
3b01 0013 6a61 7661 2f69 6f2f 5072 696e
7453 7472 6561 6d01 0007 7072 696e 746c
6e01 0015 284c 6a61 7661 2f6c 616e 672f
5374 7269 6e67 3b29 5600 2100 0500 0600
0000 0000 0200 0100 0700 0800 0100 0900
0000 1d00 0100 0100 0000 052a b700 01b1
0000 0001 000a 0000 0006 0001 0000 0001
0009 000b 000c 0001 0009 0000 0025 0002
0001 0000 0009 b200 0212 03b6 0004 b100
0000 0100 0a00 0000 0a00 0200 0000 0300


# **总结**
以上是字节二面的一些问题,面完之后其实挺后悔的,没有提前把各个知识点都复习到位。现在重新好好复习手上的**面试大全资料(含JAVA、MySQL、算法、Redis、JVM、架构、中间件、RabbitMQ、设计模式、Spring等)**,现在起闭关修炼半个月,争取早日上岸!!!!
**下面给大家分享下我的面试大全资料,如果你也有需要,[可以戳这里即可免费领取我的这份复习资料](https://gitee.com/vip204888/java-p7)**
* 第一份是我的后端JAVA面试大全
![image.png](https://static001.geekbang.org/infoq/03/03d5a796290aea2b550b484be46b6b84.png)


后端JAVA面试大全
* 第二份是MySQL+Redis学习笔记+算法+JVM+JAVA核心知识整理
![字节二面拜倒在“数据库”脚下,闭关修炼半个月,我还有机会吗?](https://static001.geekbang.org/infoq/49/49c175a771b6cbd87493adbd4b1358e1.png)
MySQL+Redis学习笔记算法+JVM+JAVA核心知识整理
* 第三份是Spring全家桶资料
![字节二面拜倒在“数据库”脚下,闭关修炼半个月,我还有机会吗?](https://static001.geekbang.org/infoq/84/8428a09ffd065b5c76762d2fe4a1c474.png)
MySQL+Redis学习笔记算法+JVM+JAVA核心知识整理
复制代码


用户头像

还未添加个人签名 2021.07.29 加入

还未添加个人简介

评论

发布
暂无评论
Java开发必须掌握!Java虚拟机(JVM