分享

Windows版IntelliJ IDEA 2023.2反编译

 江海博览 2023-11-09 发布于浙江
Windows版IntelliJ IDEA 2023.2反编译

1. Java编译和反编译的概念

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

2. IntelliJ IDEA反编译器的介绍

在IntelliJ IDEA官网的功能页面有反编译器的相关介绍

Windows版IntelliJ IDEA 2023.2反编译

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

Windows版IntelliJ IDEA 2023.2反编译

3. IntelliJ IDEA反编译器的使用

需求:查看字节码文件的内容 当我们在java项目的java-core模块的net.ittimeline.java.core.foundational.syntax包下编写了Comments.java,而且该源文件中还包含了三种Java注释。

Windows版IntelliJ IDEA 2023.2反编译

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

Windows版IntelliJ IDEA 2023.2反编译

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

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

Windows版IntelliJ IDEA 2023.2反编译
Windows版IntelliJ IDEA 2023.2反编译

然后选中Comments.class,右键选择打开方式

Windows版IntelliJ IDEA 2023.2反编译

选择Visual Studio Code打开

Windows版IntelliJ IDEA 2023.2反编译

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

Windows版IntelliJ IDEA 2023.2反编译

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

  1. 选择你要查看的字节码文件
Windows版IntelliJ IDEA 2023.2反编译
  1. 左键双击打开查看的文件

首次打开时需要同意最终用户许可协议

Windows版IntelliJ IDEA 2023.2反编译

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

Windows版IntelliJ IDEA 2023.2反编译

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

Windows版IntelliJ IDEA 2023.2反编译

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多