用户名: 密码: 免费注册 忘记密码? 加入收藏 | 设为首页
为什么程序员不应调用“sun”包?
学院首页 | 资讯中心 | 服务器软件 | 系统工具 | 系统软件 | 办公软件 | 聊天软件 | 多 媒 体 | 网页制作 | 网站运营 | 平面设计
艺术欣赏 | 数据库软件 | 程序开发 | 网络组建 | 源码下载 | 驱动下载 | 软件下载 | 电脑安全 | IT创业 | IT博客 | IT社区
硬件数码导航 | 硬件频道 | 本本频道 | MP3频道 | 相机频道 | 手机频道 | 显卡频道 | LCD 频道 | 音箱音频 | 行情 | 评测 | 导购
学院专题 软件 - 系统 - 办公 - 聊天 - 多媒体 - 网页制作 - IT创业 - 运营 - 平面 - 设计欣赏 - 数据库 - 程序 - 服务器 - 组网

 当前位置: 首页>>技术频道>>程序>>JAVA教程>>正文

为什么程序员不应调用“sun”包?

日期:2006-9-15 4:23:52     来源:JR   编辑:   

J2SEAPIDocuments是我们最常用的参考手册,但细心的朋友可能会发现,在“%JAVA_HOME%\jre\lib\rt.jar”中包含比API文档更多的类,那么其它的类为什么没有在帮助文档中出现呢?在SUN的JDKFAQ中有一篇“WhyDevelopersShouldNotWriteProgramsThatCall'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的代码除外) 。 这种兼容性意味着你写好的程序编译成的class文件仍然可以工作在将来的版本当中 。

每家实现Java平台的厂商都可以使用他们自己的方式 。 “sun.*”包中的类是SUN对Java平台的实现方式,它们工作在Java2SDK的下层,这些类未必被其它Java平台开发商支持 。 比如你的Java程序如果调用了一个名为“sun.package.Foo”的类,将有可能产生“ClassNotFoundError”的错误,同时你也将失去利用Java的一个主要的优点 。

从技术上讲,并不能防止你的程序调用“sun.*”包中的类 。 在版本的变迁当中,这些类可能会被删除或转移到其它包路径下,而且它的接口(包括名称、标签等)也很有可能发生变化,(根据SUN的观点,我们应当能够通过对“sun.*”包的修改来提高Java平台的性能 。 )在这种情况下,即便你希望程序仅仅运行在SUN的实现平台下,你仍将承受新的版本给你的系统带来破坏的风险 。 总之,编写依赖于“sun.*”包的Java程序是不安全的,他们将变得无法移植,无法被很好地支持 。 gigi_miao

  ▼ 下一篇新闻 中国年历算法和程式
  ▲ 上一篇新闻 JAVA学习入门 对初次接触者 相当有用        网友发表观点请进入=>



我要纠错】【进入论坛交流】【关闭此页

文章搜索
   
最新文章

 
·千名爱好者参与首届PHP调查
·腾讯称QQ通讯信息密钥加密 不会被
·雅虎反超Google排名搜索第二
·中搜等十余家IT企业因流氓软件被
·盛大前员工克隆网游装备获暴利被
·凤凰网将向迅雷提供娱乐及宽带内
·信产部出手规范 新浪式企业法律架
·雅虎中国称旗下软件早已没有流氓
·中搜停止划词搜索与流氓软件决裂

广告赞助
相关文章 相关教程下载
焦点信息
·腾讯称QQ通讯信息密钥加密 不会被监听
·信产部出手规范 新浪式企业法律架构不得不改
·盛大前员工克隆网游装备获暴利被追刑责
·凤凰网将向迅雷提供娱乐及宽带内容
·雅虎中国称旗下软件早已没有流氓问题
·雅虎反超Google排名搜索第二
网友评论:(评论内容只代表网友观点,与本站立场无关!)
发表评论     Hard168社区推荐帖子
姓 名: *
* 请网友遵纪守法并注意语言文明。
IT人物推荐

王江民
马云
柳传志



关于本站    联络方式    广告服务    意见信箱    加入收藏   设为首页    -
本站部分内容来自网上,如有侵权部分,敬请告知,我们会在24小时内给予处理
版权所有:Hard168.Com,如需转载文章请与我们取得联系
京ICP备05063857号 Designed by Hard168.Com
为什么程序员不应调用“sun”包?