前言
先了解一下反编译的概念:
反编译又可被称为计算机软件反向工程(Reverse engineering)或者计算机软件还原工程,是指通过对他人软件的目标程序(比如可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,某些特定情况下可能推导出源代码。反编译作为自己开发软件时的参考,或者直接用于自己的软件产品中。
编译是高级语言源程序经过编译变成可执行文件,反编译就是逆过程
很多语言都有反编译程序,Java相关的有JAD(Joint Application Development):(jad和jadEclipse已较长时间没有维护), JD(Java Decompiler)
正文
反编译可以借助第三方软件,比如 JD-GUI 。
本文所采用的方法不用借助第三方软件:都是基于IDEA内嵌的一个JD实现的,名为 FernFlower decompiler
最简单的一种反编译就是JD(Java 反编译器)将.class文件转换成一种字节码文件,从而方便开发人员阅读
方法一 通过IDEA的直接查看.java文件编译后生成的反编译文件.class
Step1 在创建文件时生成存放路径
创建project时设置过Project compiler output,默认会给一个路径在项目文件夹下&#