用户: 密码: 答案:   我要注册   忘记密码

加入收藏  设为首页

开发文档

CNJM首页

业界新闻

手机软件

终端应用

资源下载

EclipseME

CNJM论坛

                 

频道列表

J2ME开发 176篇
服务器端开发 33篇
JAVA语言 71篇
游戏与图形 101篇
WindowsMobile开发 6篇
Symbian开发 61篇
Brew开发 36篇
其它开发平台 6篇

热点文章

Jakarta Commons H... 15249次
利用HttpClient获...  11999次
[原创]反编译器jad... 10931次
防止JAVA代码被反...  9061次
Java异常处理 7840次
看例子练apache co... 7762次
每个JAVA初学者都...  7636次
加密与数字签名 7625次
为测试 Java 应用...  7072次
用JAVA设计面向对...  6953次
Java网络编程笔记(1) 6886次
移动视频: QuickTi... 6729次

文章搜索

搜 索
按 照
频 道
  
[原创]反编译器jad的使用心得
编辑:rocks    审核:rocks    文章来源:本站原创
关键词:反编译    发表日期:2003-05-22 09:57:36    浏览次数:10931次
本文版权归原作者,中国JAVA手机网收录本文的目的是让更多人阅读到此文章。转载请注明出处为中国JAVA手机网<www.cnjm.net>

[本文章最后由 rocks 在2006-02-28 10:16:33编辑过]

来自:http://www.cnjm.net/tech/article691.html

jad是非常出色的免费java字节码反编译器,相信不少人都使用过。我坚信“一段可以工作的代码就是最好的参考文档”,因此使用jad使我从前人的工作中获益匪浅:)
jad是一个基于命令行的程序,提供了大量的命令行选项,可能很多人还不熟悉,我就介绍几个对大家有帮助的。
-8: 把Unicode编码的字符转换成ASCII输出,这样程序中的中文就会原样输出,而不是令人费解的uxxxx这种形式
-nl: 把字符串按照
切分输出,这样很长的字符串也不至于都放在一行,增强了可读性。
-ff: 把数据成员放在方法之前,这样就符合大家写程序的习惯了
-space: 在if, while等关键字和表达式之间加入空格,这是java的良好编程风格
-nonlb: 不在开大括号(也就是左大括号)前加回车,这是大部分java程序员的习惯风格,大家可以根据自己的习惯选用
经过这样的配置,jad输出的java代码几乎跟手写的没有什么两样(当然格式要比手写的还要规范)
为了更加方便(因为我very very lazy~~),我还编写了一个批处理文件,把它和.class建立关联,这样我只要用鼠标双击任意一个.class文件,对应的java代码直接就在我的UltraEdit里打开,我现在几乎忘了java和class文件的区别了:-D。请把附件里的jad.exe和jadplus.bat同时放到PATH中的一个目录下,我一般就放到C:WINNT下面,如果是WinXP则是C:Windows。
==========================================================
jadplus.bat:
@if not exist %~n1.java jad -p -ff -nl -space -8 -nonlb %1 > %~n1.java
JAVA手机网[www.cnjm.net]
@uedit32 %~n1.java
==========================================================
注:
1 -p的意思是直接输出到屏幕,这样方便我重定向输出到一个java文件。
JAVA手机网[www.cnjm.net]
2 jad前面加了个判断,如果对应的java文件不存在才进行反编译,避免覆盖掉原来的java代码。
3 如果你习惯用别的java编辑器,那么修改第二行把uedit32改成你习惯的java编辑器即可。

下载jad.zip
来自:http://www.cnjm.net/tech/article691.html

相关文章
    防止JAVA代码被反编译的方法  [2006-04-14]
最新评论   [查看全部评论(9条)]
匿名 在 2006-07-21 11:04:48 发表的评论:
怎样能打开CALSS文件啊 
viso 在 2006-06-14 16:41:26 发表的评论:
好,不过可以不用-p然后输出到文件,直接用-s java修改后缀为java就可以 
匿名 在 2006-05-15 18:30:57 发表的评论:
怎么取消Yingjad 的功能啊,我的.class 文件都被改了 啊 
匿名 在 2006-05-15 18:30:54 发表的评论:
怎么取消Yingjad 的功能啊,我的.class 文件都被改了 啊 
匿名 在 2006-03-29 16:55:36 发表的评论:
我试过,但没有双击就可打开calss 文件感到有点遗憾 还请楼主再次说明 
iaroy 在 2003-07-29 16:30:30 发表的评论:
好的,不错 
网站简介  |  关于版权  |  广告服务  |  网站地图  |  联系我们
Copyright © www.CNJM.net, All rights reserved
中国JAVA手机网 版权所有
ICP备案:京ICP备041452