看别人的代码是一种痛苦的事情,不过只要你喜欢可以把这种痛苦的经历变成与一个陌生人的交流,看代码首先要熟悉业务,再次通过注释寻求,模块功能。其实最好的方式是你通过对某一块代码的阅读,进行绘制流程图,VISIO画起流程图来很方便,找出数据流,再加上自己的阅读的注释。
创新互联公司专注于伊春企业网站建设,自适应网站建设,商城网站建设。伊春网站建设公司,为伊春等地区提供建站服务。全流程按需求定制开发,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务
在你阅读学习的过程中,会发现其他coder的非常巧妙的做法,这是你应该庆幸,因为你在进步。阅读是必须的。 --------------个人观点仅供参考
在Eclipse中查看Java类库的源代码,可以通过Ctrl+鼠标左键的方式来完成;在下载JDK并安装的时候,会有一个src.zip文件,此文件就是Java类库的源码。但是有时候,会出现源码未找到的问题,此时可以通过对其设置来解决。
以JDK1.8为例,查看一下src.zip文件
如果发现找不到源代码,则进行设置
点击Attach Source按钮,弹出视图,把JDK下的src.zip文件传入点击OK即可
此时按住Ctrl+鼠标左键指向Java类库当中的类,就可以查看类的源代码
以Object类为例演示
1.下载反编译工具
需要下载四个工具:dex2jar、JD-GUI、apktool、apktool-install-windows-r05-ibot
dex2jar:将apk中的classes.dex转化成Jar文件。
JD-GUI:反编译工具,可以直接查看Jar包的源代码。
apktool:反编译工具,通过反编译APK中XML文件,直接可以查看。
apktool-install-windows-r05-ibot:辅助windows批处理工具。
2.解压缩APK包
apk文件也是一种常见的zip,常用的压缩软件就可轻松地解压apk文件。用压缩软件将apk文件中的文件解压到一个文件夹中,得到APK中的资源包括XML文件和classes.dex文件,classes.dex就是java文件编译再通过dx工具打包而成的。
3.反编译dex文件
解压apk文件后,你会发现res目录的图片没有加密,但java源码编译成了一个classes.dex文件,无法用普通的反编译class文件的方法来处理,dex2jar可以将dex文件转换成普通的jar包。
解压下载的dex2jar,把解压后的文件夹放到系统盘跟目录中并把这个目录加到系统path变量中,就可以直接用:dex2jar.bat或dex2jar.sh转换dex文件了。
DOS行命令如下:dex2jar.bat xx\classes.dex(xx是classes.dex文件所在的路径)。
将在同目录得到普通jar包:classes_dex2jar.jar,就可以用处理普通jar包的方法来反编译这个jar包得到原文件。
4.反编译jar包
得到jar包后,下载自已喜欢的反编译工具,推荐使用JD-GUI,有比较简单的图形界面,可以反编译单个class文件,也可以反编译jar包,比较方便。
打开压缩文件JD-GUI,运行jd-gui.exe,打开上面生成的jar包,即可看到源代码了。
5.反编译xml文件
打开解压的res\layout目录,有很多xml文件,如果你想看下作者是如何设计界面的,你会很失望,因为你看到的是一大堆乱码!这个时候我们需要用到的是apktool。
具体操作方法:将下载的apktool和apktool-install-windows-r05-ibot两个包解压到同一个文件夹下,这个文件夹有三个文件:aapt.exe,apktool.bat,apktool.jar。把这个文件夹也放到系统盘的根目录中并把这个目录加到path变量中。以HelloWord.apk为例:
在DOS命令行中输入:apktool d xx\HelloWord.apk HelloWord得到HelloWord文件夹,此文件夹中的xml文件就是编译好的可以正常查看的文件。
这样就得到了可以得到编译的源码和XML资源。
注意:文件的路径中最好不要出现中文!
package mypackage.OrderInt4;
/*求用java比较四个数大小源代码 (初学者 希望朋友给的代码是基础的那种) 老师说只要两个类 其中一个类从另一个类里调用*/
public class TestOrder {
public static void main(String[] args) {
int[] array = { 11, 77, 22, 44 };
// 也可以从控制台输出
int[] newArray = Order.orderBy(array);
for (int i = 0; i newArray.length; i++) {
System.out.println(newArray[i] + " ");
}
}
}
class Order {
public static int[] orderBy(int[] intArray) {
int tempArray[] = intArray;
int length = tempArray.length;
int tempValue = 0;
for (int i = 0; i length; i++) {
for (int j = i + 1; j length; j++) {
if (tempArray[i] tempArray[j]) {
tempValue = tempArray[i];
tempArray[i] = tempArray[j];
tempArray[j] = tempValue;
}
}
}
return tempArray;
}
}
步骤如下:
依次点击windows--preferences--java --installed JREs。
在界面的右边选中jre,然后点击edit按钮。
在弹出界面中点击add external JARs按钮,然后选择jdk安装路径中的rt.jar包,一般是在%java_home%\jre\lib\路径下,点击确定就完成,以后就可以在eclipse中查看jdk类库的源代码了。操作步骤如下图所示:
在Eclipse中查看Java类库的源代码,可以通过Ctrl+鼠标左键的方式来完成;在下载JDK并安装的时候,会有一个src.zip文件,此文件就是Java类库的源码。但是有时候,会出现源码未找到的问题,此时可以通过对其设置来解决。