Java中的
软件包
由于所有的Java类组合在一块形成软件包,所以,没有它们将什么也做不了。
本章先概览Java软件包的语法和语义,接下去讨论Java和VisualJ++的一些软件包。读者可能已经注意到,实际上,编程已经用到的类都包含在这些预定义的软件包中。使用现成的软件包比创建新的软件包要普遍,但是,有时用户也需要创建自己的软件包,所以,这里将举例说明怎样实现自己创建软件包。
在文章中,读者可以
学习到:
*软件包和文件夹的关系;
*Java中的固有软件包;
*WindowsFoundationClass(WFC,窗口基类)的框架结构和WFC的软件包;
*创建用户自己的软件包。
---------------------用户将创建:-----------------------------
*能从剪贴板上读取字符串和把字符串写到剪贴板的应用
程序;
*一个时钟应用程序;
*一个实用程序:包含一个能对两个数进行求和的简单类。
-----------------------------
什么是软件包
软件包是Java最主要的组织实体,它从逻辑上把相关类组合到一起,还定义了类之间的一种访问形式。每个应用程序都有一个默认的软件包,它包含了代码中引用到的所有软件包。
定义一个类作为命名数据包的成员
*在
源代码中的第一行包含“package”语句:
packagepkgname;
pkgname的取值就是软件包的名称,它必须同源代码所在的文件夹名或目录名匹配,下面是MyStuff软件包的package语句:
packageMyStuff;
package语句必须出现在源代码的开头,它前头只允许有空行和注释。package语句对在源代码文件中定义的所有类都适用。
软件包和文件
系统 软件包和文件系统有密切的关系,这种关系是公用类和文件联系的纽带。
公用类必须存放在与它同名的文件中,这就是说,取名MyClass的公用类必须存放在名为MyClass.java的源代码文件中。
包含package语句的文件也必须存放在同名的文件夹中,比如,下面这几行代码表明:名称为MyStuff的文件夹中有名称为MyClass.java的文件:
packageMyStuff;
publicclassMyClass
类文件的位置也很重要,编译这个源代码文件创建两个类文件,MyClass.class和MyHelper.class,这些类文件必须存放在命名为MyStuff的文件夹中:
packageMyStuff;
publicclassMyClass
{
...
}
classMyHelper
{
...
}
生成两个类文件MyClass.class和MyHelper.class。这些类文件一定在名字为MyStuff的文件夹中。软件包的名称可以包含多个由英文句号分隔的标识符;名称的每一部分隐含着一个独立的文件夹。比如,下面的代码表明:名称为MySubPackage的文件夹中有名称为MyClass的文件,还有,MySubPackage文件夹在MyStuff文件夹中。
packageMyStuff.MySubPackage;
publicclassMyclass
{
...