旗下导航:搜·么
当前位置:网站首页 > JAVA教程 > 正文

java怎样反编译【JAVA教程】,java

作者:搜教程发布时间:2019-12-04分类:JAVA教程浏览:42评论:0


导读:什么是反编译?反编译的历程与编译恰好相反,就是将已编译好的编程言语复原到未编译的状况,也就是找出程序言语的源代码。就是将机械看得懂的言语转换成程序员能够看得懂的言语。...

什么是反编译?

反编译的历程与编译恰好相反,就是将已编译好的编程言语复原到未编译的状况,也就是找出程序言语的源代码。就是将机械看得懂的言语转换成程序员能够看得懂的言语。

Java言语中的反编译平常指将class文件转换成java文件。 (引荐进修:java课程)

有了反编译东西,我们能够做许多事变,最重要的功用就是有了反编译东西,我们就可以读得懂Java编译器生成的字节码。比方我们就能够洞悉Java语法糖背地的道理。

Java经常运用反编译东西

重要引见4个Java的反编译东西:javap、jad和cfr以及可视化反编译东西JD-GUI

JAVAP

javap是jdk自带的一个东西,能够对代码反编译,也能够检察java编译器生成的字节码。javap和其他两个反编译东西最大的区别是他生成的文件并非java文件,也不像其他两个东西生成代码那样更轻易明白。

javap并没有将字节码反编译成java文件,而是生成了一种我们能够看得懂字节码。实在javap生成的文件仍然是字节码,只是程序员能够轻微看得懂一些。假如你对字节码有所控制,照样能够看得懂以上的代码的。实在就是把String转成hashcode,然后举行比较。

JAD

JAD是一个比较不错的反编译东西,只需下载一个实行东西,就可以够完成对class文件的反编译了。照样上面的源代码,运用jad反编译后内容以下:

敕令:jad.exe Decompilation.class 会生成一个Decompilation.jad的文件

CFR

JAD很好用,然则无法的是很久没更新了,所以只能用一款新的东西替换他,CFR是一个不错的挑选,比拟JAD来讲,他的语法可能会轻微庞杂一些,然则幸亏他能够用.

CFR将反编译当代Java特征–Java 8 lambdas(Java和更早版本中的Java beta 103),已反编译Java 7 String,但CFR是完整用Java 6编写的.

JD-GUI

JD-GUI 是一个用 C++ 开发的 Java反编译东西,由 Pavel Kouznetsov开发,支撑Windows、Linux和苹果Mac Os三个平台。而且供应了Eclipse平台下的插件JD-Eclipse。

JD-GUI 基于GPLv3开源协定,对个人运用是完整免费的。JD-GUI重要的是供应了可视化操纵,直接拖拽文件到窗口既可,效果图以下

以上就是java怎样反编译的细致内容,更多请关注ki4网别的相干文章!

标签:java


欢迎 发表评论: