仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 546|回复: 11
打印 上一主题 下一主题

[学习教程] 了解下JAVA的谈谈JAVA程序的反编译

[复制链接]
海妖 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:19:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
一旦你有了思想,那你编的程序就有了灵魂,不管是什么语言到了你的手里都会是你的工具而已,他们的价值是能尽快帮助你实现你想要的目标。但是如果你没有了思想,那就像是海里的帆船失去了船帆,是很难到打海的另一边的。
现在JAVA言语在全球局限正热火朝天般的盛行,它广范地使用在INTERNET的数据库、多媒体、CGI、及静态网页的制造方面。1999年在美国对JAVA程序员的需求量初次凌驾C++!
作者因比来剖析一些JAVA程序,对JAVA的反编译举行了一番懂得,上面将我所懂得的情形作以下先容,但愿对JAVA喜好者有所匡助。
JAVA是接纳一种称做“字节编码”的程序布局,分为小程序(嵌进到HTML文件中)和使用程序(间接在命令形态下实行)两品种型。不管哪一种布局,一旦用JAVAC命令编译后,均酿成后缀为CLASS的同名可实行文件。这类文件是不成浏览的代码。
经查阅了SUN公司的JDK(JDK1.1.3)文档材料后,我找到了一个据称是可反编译JAVA的JAVAP文件(EXE),这个文件位于JDKBIN上面,经按申明利用后,感应扫兴,本来这个“反编译”仅可反编译出JAVA程序的数据区(界说)、多少办法和类的援用等。
这里我用了一个复杂例子来讲明成绩。
JAVA的源程序hello_java.java以下:
importjava.applet.*;
importjava.awt.*;
publicclasshello_javaextendsApplet
{
publicvoidpaint(Graphicsg)
{
g.drawString("HelloJava!
",20,20);
}
}
经用反编译命令:javap-c-package-public-privatehello_javahello.java
失掉的反编译了局(hello.java)以下:(有关javap命令的选择参数请见其利用申明,这里-c暗示选择了反编译)
Compiledfromhello_java.java
publicsynchronizedclasshello_javaextendsjava.applet.Applet
/*ACC_SUPERbitset*/
{
publicvoidpaint(java.awt.Graphics);
publichello_java();
<p>
最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。
透明 该用户已被删除
沙发
发表于 2015-1-20 20:25:11 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
灵魂腐蚀 该用户已被删除
板凳
发表于 2015-1-29 20:51:29 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
海妖 该用户已被删除
地板
 楼主| 发表于 2015-2-4 13:25:53 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
小女巫 该用户已被删除
5#
发表于 2015-2-9 23:27:00 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
只想知道 该用户已被删除
6#
发表于 2015-2-10 03:27:11 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
老尸 该用户已被删除
7#
发表于 2015-2-10 16:51:36 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
爱飞 该用户已被删除
8#
发表于 2015-3-1 12:40:04 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
飘飘悠悠 该用户已被删除
9#
发表于 2015-3-5 19:36:28 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
蒙在股里 该用户已被删除
10#
发表于 2015-3-6 21:14:21 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
小妖女 该用户已被删除
11#
发表于 2015-3-12 17:24:12 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
分手快乐 该用户已被删除
12#
发表于 2015-3-20 00:52:14 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-21 01:22

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表