Java类库及其组织结构(Java Api)

打开J2SE 1.7 的API文档,如下图所示:
Java类库及其组织结构(Java Api)_第1张图片
图1  API 文档

Java类库中有很多包:
  • 以 java.* 开头的是Java的核心包,所有程序都会使用这些包中的类;
  • 以 javax.* 开头的是扩展包,x 是 extension 的意思,也就是扩展。虽然 javax.* 是对 java.* 的优化和扩展,但是由于 javax.* 使用的越来越多,很多程序都依赖于 javax.*,所以 javax.* 也是核心的一部分了,也随JDK一起发布。
  • 以 org.* 开头的是各个机构或组织发布的包,因为这些组织很有影响力,它们的代码质量很高,所以也将它们开发的部分常用的类随JDK一起发布。

在包的命名方面为了防止重名有一个惯例:大家都以自己域名的倒写形式作为开头来作为开头为自己开发的包命名,例如百度发布烦人包会以com。baidu.*开头,w3c组织发布的包会以org.w3c.*开头
组织机构的域名后缀一般为 org,公司的域名后缀一般为 com,可以认为 org.* 开头的包为非盈利组织机构发布的包,它们一般是开源的,可以免费使用在自己的产品中,不用考虑侵权问题,而以 com.* 开头的包往往由盈利性的公司发布,可能会有版权问题,使用时要注意。

java中常用的几个包介绍:
包名 说明
java.lang 该包提供了Java编程的基础类,例如 Object、Math、String、StringBuffer、System、Thread等,不使用该包就很难编写Java代码了。
java.util 该包提供了包含集合框架、遗留的集合类、事件模型、日期和时间实施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。
java.io 该包通过文件系统、数据流和序列化提供系统的输入与输出。
java.net 该包提供实现网络应用与开发的类。
java.sql 该包提供了使用Java语言访问并处理存储在数据源(通常是一个关系型数据库)中的数据API。
java.awt 这两个包提供了GUI设计与开发的类。java.awt包提供了创建界面和绘制图形图像的所有类,而javax.swing包提供了一组“轻量级”的组件,尽量让这些组件在所有平台上的工作方式相同。
javax.swing
java.text 提供了与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。

更多的包和说明请参考API文档。

你可能感兴趣的:(Java核心知识)