「如何反编译java文件」jar反编译成java
本篇文章给大家谈谈如何反编译java文件,以及jar反编译成java对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
怎么把class文件反编译成java文件
一、基本用法
Usage:jad [option(s)]
直接输入类文件名,且支持通配符,如下所示。
c:\java\jad example1.class
c:\java\jad *.class
结果是将example1.class反编译为example1.jad。将example1.jad改为example1.java即得源文件。
二、Option -o
不提示,覆盖源文件
三、Option -s
c:\java\jad -sjava example1.class
反编译结果以.java为扩展名。
四、Option -p
将反编译结果输出到屏幕
c:\java\jad -p example1.class
将反编译结果重定向到文件
c:\java\jad -p example1.classexample1.java
五、Option -d
指定反编译的输出文件目录
c:\java\jad -o -dtest -sjava *.class
六、jad:反编译工具下载
可以将class文件反编译成java文件
假设将jad.exe安装在f:/java/jad目录下
把要反编译的文件*.class复制到此目录下,接着接以下步骤,
在命令行窗口环境中进入jad目录,
然后运行:jad -s java *.class (附,*.class指要反编译的文件名)
如果*.class文件和jad程序不在同一个目录,就要用到path环境变量,
将jad 所在目录加到path路径中即可:set path=%path%;f:/java/jad
若要了解jad更为详细的使用帮助信息,直接运行jad.exe查看
如何将java中的.class文件反编译
选择一款反编译工具即可
1、JD-GUI
JD-GUI 是显示java 源代码 *.class文件的 图形界面工具。可以在这里下载:JD-GUI-DownLoad
下载下来后,打开该工具,直接将jar包 拖拽到 显示窗口即可查看源代码。
2、JD-Eclipse
(1)下载 JD-Eclipse 插件。下载后,打开Eclipse,选择:Help--Install New Software...--add --archive... 按步骤操作即可:
安装后,重启Eclipse,应该可以查看 *.class文件的代码。
ADD and Archive...
3、JD-IntelliJ
JD-Intellij 是 IntelliJ IDEA 的插件,安装了这个插件,可以方便查看 jar包源码。下载JD-Intellij
以Android studio为例: 可以离线安装也可以在线安装。
楚雄java培训学校告诉你java中的编译与反编译?
一、什么是编译
1、利用编译程序从源语言编写的源程序产生目标程序的过程。
2、用编译程序产生目标程序的动作。编译就是把高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制的。编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息。
二、什么是反编译
计算机软件反向工程(Reverseengineering)也称为计算机软件还原工程,是指通过对他人软件的目标程序(可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,某些特定情况下可能推导出源代码。反编译作为自己开发软件时的参考,或者直接用于自己的软件产品中。
三、Java类的编译与反编译
我们在最初学习Java的时候,会接触到两个命令:javac和java,那个时候我们就知道,javac是用来编译Java类的,就是将我们写好的helloworld.java文件编译成helloworld.class文件。
class文件打破了C或者C++等语言所遵循的传统,使用这些传统语言写的程序通常首先被编译,然后被连接成单独的、专门支持特定硬件平台和操作系统的二进制文件。通常情况下,一个平台上的二进制可执行文件不能在其他平台上工作。而Javaclass文件是可以运行在任何支持Java虚拟机的硬件平台和操作系统上的二进制文件。
那么反编译呢,就是通过helloworld.class文件得到java文件(或者说是程序员能看懂的Java文件)
四、什么时候会用到反编译
1、我们只有一个类的class文件,但是我们又看不懂Java的class文件,那么楚雄java培训认为可以把它反编译成我们可以看得懂的文件。
2、学习Java过程中,JDK的每个版本都会加入越来越多的语法糖,有些时候我们想知道Java一些实现细节,我们可以借助反编译。
如何进行JAVA程序的反编译?
JAVA是采用一种称做“字节编码”的程序结构,分为小程序(嵌入到HTML文件中)和应用程序(直接在命令状态下执行)两种类型。无论哪种结构,一旦用JAVAC 命令编译后,均变成后缀为CLASS的同名可执行文件。这种文件是不可阅读的代码。 经查阅了SUN公司的JDK(JDK1.1.3)文档资料后,我找到了一个据称是可反编译JAVA的JAVAP文件(EXE),这个文件位于\JDK\BIN\ 下面,经按说明使用后,感到失望,原来这个“反编译”仅可反编译出JAVA程序的数据区(定义)、若干方法和类的引用等。 这里我用了一个简单例子来说明问题。 详情见:
如何反编译java文件的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于jar反编译成java、如何反编译java文件的信息别忘了在本站进行查找喔。