JSPCN主页 | JSP空间 | 网站制作 | JSP下载 | JSP论坛 | JSP教程 | 关于JSPCN | 联系我们
JSP虚拟主机,jsp空间,java空间,java虚拟空间,详细请点击进入
做最专业的JSP中文网站 当前位置首页--JAVA技术--SUN  
文章搜索:
关键字 标题
  
JSP中文网内容管理系统(JCMS)
JSP虚拟主机
网络笔记本
网摘,图片,笔记收藏
虚拟服务器

JSPCN文章目录分类
JSP配置[219]JSP基础[136]
中文问题[69]上传问题[27]
JAVABEAN[46]数据库[212]
文件操作[126]图片声音[17]
JSP其他[57]时间相关[16]
JAVAMAIL[72]STRUTS[144]
开发工具[28]教程系列[157]
JSP实例[89]
JAVA基础[421]APPLET[78]
JAVA网络[179]Applica[115]
Servlet[98]XML[163]
J2ME[257]J2EE[374]
考试相关[63]JAVA线程[90]
EJB[261]Swing[26]
Java API[141]声音图片[28]
异常处理[33]JAVA实例[290]
JAVA类[139]SUN[89]
Hibernate[6]JMX[8]
Spring[34]
本版推荐文章 
本版热点文章 
相关文章链接 
 
为什么程序员不应调用“sun”包?
作者:未知     文章来源:www.jspcn.net
访问次数:447次     加入时间:2005年01月19日
J2SE API Documents是我们最常用的参考手册,但细心的朋友可能会发现,在“%JAVA_HOME%jrelib t.jar”中包含比API文档更多的类,那么其它的类为什么没有在帮助文档中出现呢?在SUN的JDK FAQ中有一篇“Why Developers Should Not Write Programs That Call ´sun´ Packages”,该文部分地解答了这个问题,我将原文翻译如下

================================================================================

J2SE中的类大致可以划分为以下的各个包:
java.*,javax.*,org.*,sun.*
除了“sun”包,其它各个包都是Java平台的标准实现,并且今后也将被继续支持。一般说来,“sun”之类的包并不包含在Java平台的标准中,它与操作系统相关,在不同的操作系统(如Solaris,Windows,Linux,Mac等等)中的实现也各不相同,并且可能随着J2SE版本不定期变化。因此,直接调用“sun”包的程序代码并不是100%的Java实现。也就是说:
“java.*”包,“javax.*”包,“org.*”包是作为J2SE的API公开接口的一部分,如果程序直接调用这些包中的API,那么程序是可以运行在所有Java平台上,而与操作系统无关;但“sun.*”包并不是API公开接口的一部分,调用“sun”包的程序并不能确保工作在所有Java平台上,事实上,这样的程序并不能工作在今后的Java平台上。
正因为如此,“sun.*”包中的类并没有提供API文档。平台无关性是Java语言最大的优势之一,此外,SUN和Java许可证确保维持了今后API的向上兼容性(以后修改的那些有严重bug的代码除外)。这种兼容性意味着你写好的程序编译成的cl ass文件仍然可以工作在将来的版本当中。
每家实现Java平台的厂商都可以使用他们自己的方式。“sun.*”包中的类是SUN 对Java平台的实现方式,它们工作在Java 2 SDK的下层,这些类未必被其它Java 平台开发商支持。比如你的Java程序如果调用了一个名为“sun.package.Foo”的类,将有可能产生“ClassNotFoundError”的错误,同时你也将失去利用Java的一个主要的优点。
从技术上讲,并不能防止你的程序调用“sun.*”包中的类。在版本的变迁当中,这些类可能会被删除或转移到其它包路径下,而且它的接口(包括名称、标签等)也很有可能发生变化,(根据SUN的观点,我们应当能够通过对“sun.*”包的修改来提高Java平台的性能。)在这种情况下,即便你希望程序仅仅运行在SUN的实现平台下,你仍将承受新的版本给你的系统带来破坏的风险。总之,编写依赖于“sun.*”包的Java程序是不安全的,他们将变得无法移植,无法被很好地支持。 
JSP虚拟主机 | JSP空间 | JSP主机 | JSP双线虚拟主机 | JAVA空间 | JAVA虚拟主机 | 虚拟服务器 | JSP 虚拟服务器 | VPS
Virtual Private Server | JAVA虚拟服务器 | VM服务器 | VHOST | 虚拟操作系统 | JSP论坛 | JAVA论坛 | JSP站点论坛
Copyright © 2002-2005 JSPCN.net. All rights reserved.
JSP中文网    备案序号:蜀ICP备05001583号
成都恒海科技发展有限公司    成都市一环路南二段6号新瑞楼三楼8号