扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
源代码默认是打不开的,可以使用反编译工具,进行逆向解析才能看到源代码。
创新互联专注于渭南网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供渭南营销型网站建设,渭南网站制作、渭南网页设计、渭南网站官网定制、小程序开发服务,打造渭南网络公司原创品牌,更为您提供渭南网站排名全网营销落地服务。
eclipse这个开发工具,默认有反编译的插件,在查看的类,按住ctrl点击鼠标左键即可查看源代码。
学会在idea(eclipse)中阅读、调试源码,是java程序员必不可少的一项技能。
在idea中配完环境后,默认其实也是能够对jdk的源码进行debug调试的。但是无法在源码中添加自己的注释,无法添加自己的理解。如果干瞪眼看的话,可能过段时间,就忘记了。下面就介绍下,如何在jdk源码中为所欲为,像在我们自己的代码中一样写注释、调代码:
打开idea,选择Project-File-Project Structure-SDKs-Sourcepath,初始状态如下图 :
打开本地jdk安装路径,本处为E:\java\jdk8,将此路径下的src.zip压缩包解压到自定义的指定文件夹(可以在电脑磁盘任意位置),本处解压到同目录的jdk_source文件夹下,如下图:
继续在步骤1中的设置页面中操作,将E:\java\jdk8\src.zip通过右侧的减号将其移除;并通过右侧的加号,将解压文件夹E:\java\jdk8\jdk_source导入进来;点击apply,再点击OK。导入结果见下图:
这时,再重新打开jdk的源码类,我们就可以在源java文件中,添加自己的注释了。
一定注意:添加注释时,一定不要新加一行写注释。最好在一行代码的后面,使用//进行注释。否则行号和真正的jre中编译后的代码行号对应不上,如果对源码debug时,会出现代码运行和行号不匹配的情况
Source Insight
是如今最好用的语言编辑器,支持几乎所有的语言, 如C、C++、ASM、PAS、ASP、HTML等常见的,还支持自己定义关键字,如果您 是一个程序员或者网页制作人,这个软件对您都是有帮助的! Source Insight为您提供了可快速访问源代码和源信息的功能。
Source Insight自动创建并维护它自己高性能的符号数据库,包括函数、method、全局变量、结构、类和工程源文件里定义的其它类型的符号。Source Insight 可以迅速地更新您的文件信息,即使在您编辑代码的时候。而且符号数据库的符号可以自动创建到您的工程文件中。
myeclipse eclipse
如果你只是看源码的话推荐你用sublime3编辑器
用你熟悉的集成开发环境IDE就可以了,比如Eclipse,Intellij IDEA等,其中用Intellij IDEA我是比较推荐的,它的搜索功能很强大,我自己也是使用这个进行源码的阅读
1.编写useSourceViewer 类的基本框架,该类仅包括无返回值的main ()方法,该方法从参数中获取URL,通过输入缓冲和输出缓冲将该URL 原码输出。
2.编写useSourceViewer 类,代码如下:
import java.net.*;
import java.io.*;
public class useSourceViewer
{
public static void main (String[] args)
{
if (args.length 0)
{
try
{
//读入URL
URL u = new URL(args[0]);
InputStream in = u.openStream( );
// 为增加性能存储输入流
in = new BufferedInputStream(in);
// 将输入流连接到阅读器
Reader r = new InputStreamReader(in);
int c;
while ((c = r.read( )) != -1)
{
System.out.print((char) c);
}
Object o = u.getContent( );
System.out.println("I got a " + o.getClass().getName( ));
}
catch (MalformedURLException e)
{
System.err.println(args[0] + " is not a parseable URL");
}
catch (IOException e)
{
System.err.println(e);
}
} // end if
} // end main
} // end SourceViewer}
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流