JDK源码包结构分类

原创 2013年12月04日 17:16:30
最近查看JDK源码时,无意间发现几个类在陌生包里:com.sun.*、sun.*、org.*,google了一把总结了下以备他人搜索,如内容有误欢迎指正!

Jre库包含的jar文件(jdk1.6):resources.jar、rt.jar、jsse.jar、jce.jar、charsets.jar、dnsns.jar、localedata.jar等共10个jar文件,其中resource.jar为资源包(图片、properties文件);rt.jar为运行时包,子包结构如下图:



java.*、javax.*包,org.*包

1、作为J2SE的API公开接口的一部分,与操作系统无关可以在所有Java平台上运行

2、不同的jdk版本会保持兼容不会轻易变化,提供API文档及源码(src.zip)。


sun.*包

1、不是API公开接口的一部分,调用sun包的程序并不能确保工作在所有Java平台上,不同的操作系统中的实现可能不相同。

2、不同的jdk版本sun包中的类也可能不定期的变化,因此sun.*包中的类没有提供API文档及源码。


注意平台无关性是Java语言最大的优势之一,从技术上讲,并不能防止你的程序调用sun.*包中的类。在JDK版本的变迁当中,这些类可能会被删除或转移到其它包路径下,而且它的接口(包括名称、标签等)也很有可能发生变化,在这种情况下,即便你希望程序仅仅运行在SUN的实现平台下,你仍将承受新的版本给你的系统带来破坏的风险。总之,编写依赖于sun.*包的Java程序是不安全的,他们将变得无法移植、破坏了程序的平台无法性、也无法被JDK各版本所兼容


sun.*包中的类如何查看源码?

1、如果只是查看单个类源码,推荐一个网站进行搜索查看,可以很方便的查看API及源码,网站地址:http://www.docjar.com/

2、如果希望在Eclipse中关联源码,我收集了一个jdk1.5的sun源码包,下载地址:http://download.csdn.net/detail/bbirdsky/6656243





版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

jdk1.7包中各个jar包的作用

我相信jdk 1.7 大家应该很熟悉了吧。现在一般的jar开发基本上使用的是1.6和1.7版本的。 jdk1.7呢有15个jar 分别为resources.jar rt.jar  jsse.jar  ...

Jre库包含的jar文件(jdk1.6)

Jre库包含的jar文件(jdk1.6): resources.jar、rt.jar、jsse.jar、jce.jar、charsets.jar、dnsns.jar、localedata.jar等共...

[Java]Openjdk 源码结构说明(一)

OpenJDK 源码的目录结构 关键词说明 Corba Hotspot jaxp JaxWS LangTools JDK share Nashornopenjdk 是 Java 的开源实现,有关的 源...
  • socrj
  • socrj
  • 2015-02-23 20:46
  • 2502

一张图搞定JDK的Executor框架

最近整理了下Executor框架,但发现有些东西还是很容易忘掉,于是开始用思维导图梳理了一下Executor框架几个重要的类,以便加深自己的记忆。 千言万语不如一图(基本不写博客,原谅我标题党一回,...

JDK的目录结构及结构图

JDK的目录结构及结构图 -bin目录: JDK开发工具的可执行文件 -lib目录: 开发工具使用的归档包文件 -jre: Java 运行时环境的根目录,包含Java虚拟...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)