预计阅读时间: 3 分钟
java.* 是j2se的标准库,是java标准的一部分,是对外承诺的java开发的接口,通常要保持向后兼容,一般不会轻易修改。所有的jdk的实现(其他厂家的,在java.*上都是一样的)。它提供也一些基础的东西,如io库、桌面程序的类库,如awt、集合库(如Collection、List、Map)等这些最基础的类库。
javax.*也是标准,但是没有包含在标准库中,一般属于面向标准库的扩展,通常属于某个特定领域,不是一般性的api。所以以类似扩展的方式提供api,以避免jdk的标准库过大,像j2ee里面包括servlet、jsp、ejb、xml等。但也不能排除某些早期的javax,后来并入到标准库中,所有也应该属于新版本JDK的标准库。比如jmx,jdk5以前是以扩展方式提供,但是jdk5以后就做为标准库的一部分了,所有javax.management也是jdk5的标准库的一部分。
com.sun.*和org.omg.* 一般是sun的hotspot虚拟机中java.*和javax.*的实现类。但因为包含在rt中,所以我们也可以调用。但因为不是sun对外公开承诺的接口,所以根据根据实现的需要随时增减,因此在不同版本的hotspot中可能是不同的,而且在其他的jdk实现中是没有的,调用这些类,会损失掉一些一致性和向后兼容性。
applet、awt、beans为java应用程序包(早期的包)
io输入输出流lang多语言包math数学计算包
net网络连接包nio提供缓存包rmi远程调用包
security安全包sql数据库操作包text文本处理包
util日志、正则、zip、concurrent并发处理等扩展工具包
参考文章: http://mouer.iteye.com/blog/974401
原文 http://boke.iflsy.com/archives/1644