专业的JAVA编程教程与资源

网站首页 > java教程 正文

IntelliJ IDEA内置反编译工具

temp10 2024-12-05 16:37:34 java教程 15 ℃ 0 评论

1 Java编译和反编译

  • Java的编译(Compile)就是使用Java编译器(javac)将Java源文件(例如Comments.java)编译成Java字节码文件(例如Comments.class)的过程
  • Java的反编译(Decompiler)就是使用反编译器将Java字节码文件的内容转换成Java源代码的过程


2 IntelliJ IDEA反编译器介绍

IntelliJ IDEA功能的内置工具和集成有反编译器的相关介绍

IntelliJ IDEA内置反编译工具

同时还有一篇详细介绍IntelliJ IDEA反编译器的博客,大家有兴趣了解下即可

IntelliJ IDEA反编译工具使用

需求:查看字节码文件Comments.class

java-core-foundational-syntax模块的net.ittimeline.java.core.foundational.syntax包下的源文件Comments.java保包含了Java的三种注释:单行注释、多行注释和文档注释

而在运行Comments.java后在java项目的target\test-classes\net\ittimeline\java\core\foundational\syntax目录下有一个同名的字节码文件Comments.class

在文件资源管理器打开Comments.class

尝试使用文本编辑器(例如Visual Studio Code)查看该字节码文件内容时就会发现无法查看

选中Comments.class,右键选择打开方式>Visual Studio Code

Visual Studio Code会提示 The file is not displayed in the text editor because it is either binary or uses an unsupported text encoding. 即该文件不会显示在文本编辑器中,因为它要么是二进制文件,要么使用不受支持的文本编码

因此这里我们使用IntelliJ IDEA内置的反编译器打开字节码文件


  1. 选择你要查看的字节码文件
  1. 左键双击打开查看的文件
    首次打开时需要同意最终用户许可协议

点击Accept同意即可

然后就可以看到字节码文件Comments.class反编译之后的内容

通过将Comments.java和Comments.class两个文件左右分屏,对比Comments.java和Comments.class就会发现注释的内容是不会参与编译

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表