开发者社区> 技术小胖子> 正文

Java开发的利器: 反编译工具 JD-GUI

简介:
+关注继续查看

原文地址:http://simpleframework.net/news/view?newsId=82757dbe8bd1487992b01247b349225b


老赵说起来也能算个Java程序员,可是写过的Java代码并不多,可老赵实实在在是从程序员干起的。虽然肚子里也装了不少的东西,可作为一件乐此不疲的事情,就是看那些所谓“高人”的代码。

高人们的行事风格,十人十样,难一而足,不能以常人之准则判之。诸如,功能强大用之方便的IDE不用,用文本编辑器写Java代码;抑或一个类中洋洋洒洒 数千行代码,且无一行注释;再或编写完代码后,进行混淆,美其名曰“知识保护”;另者高举Opensource的大旗,源码却无处可寻;更有甚者,一个 “Hello world!”,能整出是好几种实现方式,...。请注意,我无意质询或贬低这些高人们,知识产权归创造者,理所当然。

Andy语录:代码是写的,不是看的!然而有时看高人们的代码,还是收获颇丰的,或者可以说是一种学习的捷径。

而高人们之所以高,还在于他们产出的代码,确实有过人之处,以巧为媒,以能为介,不管你们信不信,反正我是相信的!

陈述如此之多,不外乎引出标题所述的Java反编译工具: JD-GUI。老赵以前在看高人们的代码时,常用的工具是 DJJAVA,或者直接用其中所带反编译工具的内核:JAD,尤其是成批反编译一个整包的Java类时,更是如此。

今日早晨,想看看自己写的Java代码,反编译后和自己原来写的东西究竟有何区别,下载 DJJAVA 的最新版,多次不成功,不知是网络的原因,还是自己失去了耐心,决心重新找个可用的东西,结果发现了 JD-GUI 这个东东。

其优点如下:

(1) C++实现,速度奇快;免安装,一个 jd-gui.exe文件,下载后拷贝即用。

(2)勿论.class还是jar包,打开后,可以直接查看代码,且是排好版的格式。

(3)且可以直接存储源代码,最可贵的是可以将 jar 包中的源代码全部转储。

示例如下:

0_0.png?t=1445909259473
0_0.png?t=1445909259478
0_0.png?t=1445909259481
0_0.png?t=1445909259484
0_0.png?t=1445909259488


反编译有几个好处:

    ①可以看自己的项目中的class文件是否编译到了,因为服务器运行的是class文件。

    ②可以查看别人提供的jar包里面的源码,进行学习

    ③可以加强自己的安全意识,尽量减少代码泄露出去。不能避免别人反编译,但是我们可以增加反编译的难度。




      本文转自建波李 51CTO博客,原文链接:http://blog.51cto.com/jianboli/1886591,如需转载请自行联系原作者



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
高级开发必须理解的Java中SPI机制
高级开发必须理解的Java中SPI机制
20 0
六年Java开发,分享年薪50W+架构师一路成长的辛酸
13年下半年接触java,奇遇一般参加了java培训,期间甘苦自知。14年初如愿找到人生第一份工作,工资3k;对于之前的付出也算是回报吧 ,对于当时的我已经很满足了。 但是后来没想到公司是个坑, 入司半年有余,写的代码屈指可数;但是却结交了一位良师益友对我以后的职业发展和技术上提供了明灯,给予了不少帮助。所以说(塞翁失马,焉知非福)还是有些道理的。
24 0
阿里大牛都在读的10本Java实战书籍,Java开发进阶必备书单
关乎于程序员,除了做项目来提高自身的技术,还有一种提升自己的专业技能就是:多!看!书! 毕竟,书是学习的海洋呢!So,Java程序员你们准备好了吗?双手奉上Java程序员必读之热门书单。
25 0
3分钟教你用java开发一个小程序后台服务器~看完你也会
3分钟教你用java开发一个小程序后台服务器~看完你也会
23 0
一日一技:在Python开发中,如何让Java程序员抓狂
一日一技:在Python开发中,如何让Java程序员抓狂
11 0
【一名资深Java开发的经验浅谈】
【一名资深Java开发的经验浅谈】
27 0
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏21之enemy行走和死亡动画效果
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏21之enemy行走和死亡动画效果
42 0
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏20之enemy被攻击显示后退动画(block效果)
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏20之enemy被攻击显示后退动画(block效果)
33 0
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏19敌人可以被打死
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏19敌人可以被打死
30 0
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏18玩家攻击动画实现
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏18玩家攻击动画实现
35 0
+关注
技术小胖子
文章
问答
视频
文章排行榜
最热
最新
相关课程
更多
相关电子书
更多
JAVA开发手册1.5.0
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关实验场景
更多