Java官方为开发者提供了很多功能强大的类,这些类被分别放在各个包中,随JDK一起发布,称为Java类库或Java API。

  API(Application Programming Interface,应用程序编程接口)是一个通用概念。

  例如我编写了一个类,可以获取计算机的各种硬件信息,它很强大很稳定,如果你的项目也需要这样一个功能,那么你就无需再自己编写代码,将我的类拿来直接用就可以。但是,我的类代码很复杂,让你读完这些代码不太现实,而且我也不希望你看到我的代码(你也没必要也不希望读懂这些晦涩的代码),我要保护我的版权,怎么办呢?

  我可以先将我的类编译,并附带一个文档,告诉你我的类怎么使用,有哪些方法和属性,你只需要按照文档的说明来调用就完全没问题,既节省了你阅读代码的时间,也保护了我的版权。例如,获取CPU信息的方法:

  getCpuInfo(int cpuType);

  这就是一个API。也就是说,该文档中描述的类的使用方法,就叫做API。

  我也可以开发一个软件,用来清理计算机中的垃圾文件,我比较有公益心,希望让更多的开发人员使用我的软件,我就会在发布软件的同时附带一个说明文档,告诉你怎样在自己的程序中调用,这也叫做API。

  Java API也有一个说明文档,入口地址:http://www.oracle.com/technetwork/java/api

  选择对应版本的Java,点击链接进入即可。J2SE 1.7的API地址为:http://docs.oracle.com/javase/7/docs/api/

  这个文档是在线的,官方会随时更新。当然你也可以下载到本地,请大家自己百度怎么下载。

  打开J2SE 1.7的API文档,如下图所示:

  图1 API文档

  Java类库中有很多包:

  以java.*开头的是Java的核心包,所有程序都会使用这些包中的类;

  以javax.开头的是扩展包,x是extension的意思,也就是扩展。虽然javax.是对java.的优化和扩展,但是由于javax.使用的越来越多,很多程序都依赖于javax.,所以javax.也是核心的一部分了,也随JDK一起发布。

  以org.*开头的是各个机构或组织发布的包,因为这些组织很有影响力,它们的代码质量很高,所以也将它们开发的部分常用的类随JDK一起发布。

  在包的命名方面,为了防止重名,有一个惯例:大家都以自己域名的倒写形式作为开头来为自己开发的包命名,例如百度发布的包会以com.baidu.开头,w3c组织发布的包会以org.w3c.开头,微学苑发布的包会以net.weixueyuan.*开头……

  组织机构的域名后缀一般为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文档。

  更多技术教程,请关注技术教程网www.jishujc.com