飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2571|回复: 0

4.4 类的集合----包

[复制链接]

该用户从未签到

发表于 2005-2-26 21:10:17 | 显示全部楼层 |阅读模式
[center]4.4 类的集合----包[/center]

4.4.1 理解包(package)的基本概念
  一旦你创建了一个类,并想重复地使用它,那么把它放在一个包中将是非常有效的,包(package)是一组类的集合,例如,Java本身提供了许多包,如java.jo和java.lang,它们存放了一些基本类,如System和String。你可以为自己的几个相关的类创建一个包。
  把类放入一个包内后,对包的引用可以替代对类的引用。此外,包这个概念也为使用类的数据与成员函数提供了许多方便。没有被public、private修饰的类成员也可以被同一个包中的其它类所使用。这就使得相似的类能够访问彼此的数据和成员函数,而不用专门去做一些说明。
  下表5-1列出了Java自带的一些常用包:

        包名称               包的内容描述
   
基本语言类          为Java语言的基本结构(如字符串类、数组类)
                    提供了基本的类描述
实用类              提供了一些诸如编码、解码、哈西表、向量、
                    堆栈之类的实用例程
I/O类               提供了标准的输入/输出及文件例程

applet类            提供了与支持Java的浏览器进行交互的例程

另一个窗口          AWT提供了一些诸如字体、控制、按钮、滚动条
工具集类(AWT类)     之类的图形接口

网络类              为通过诸如telnet、ftp、www之类的协议访问
                    网络提供了例程

                表5-1  Java基本包一览

4.4.2 定义一个包

  你可以用下机的成员函数去说明一个包:
package PackageName;
  比如,你可以把Rectangle类放入一个名为shapes的包中:
package shapes
  此后,当你用javac来编译这个文件时,将会在当前路径下得到一个字节代码文件Rectangle.class。但你还需要将它移至java类库所在路径的shapes子目录下(在此之前,你必须建立一个名为shapes的子目录),这样以后才能应用shapes包中的Rectangle类。当然你可以用-d选项来直接指定文件的目的路径,这样就无需编译后再移动。
  包的名称将决定它应放的不同路径。例如用下面的方式来构造一个包。
package myclass.Shapes;
  归入该包的类的字节代码文件应放在java的类库所在路径的myclass子目录下。现在包的相对位置已经决定了,但java类库的路径还是不定的。事实上,java可以有多个存放类库的目录,其中的缺省路径为java目录下的lib子目录,你可以通过使用-classpath选项来确定你当前想选择的类库路径,具体成员函数可参考第三章的内容。除此之外,你还可以在CLASSPATH环境变量中设置类库路径。

4.4.3 引用已定义过的包

  为了使用已定义过的包,你必须使用引用命令import,你可以用以下三种方式引用包中的一个类:
1.在每一个类名前给出个包名:
Shapes.Rectangle REET=new Shapes.Rectangle(10,20)
2.引用类本身:
import Shapes.Reckargle;
3.引用整外包:
import Shapes;
PYG19周年生日快乐!
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表