第 10 课:软件包
使用软件包可以组织类以及它们之间的相互关系。本课指导您如何设置和使用软件包。 |
- | 第 1 步:选择软件包名称 |
- | 第 2 步:创建目录 |
- | 第 3 步:添加软件包声明 |
- | 第 4 步:添加访问修饰符 |
- | 第 5 步:编译源文件 |
- | 第 6 步:使用类 |
到现在为止,您已经熟练掌握了 JavaFX Script 编程语言的基础知识。但是,源文件的位置可能有点紊乱(到现在为止,您可能只有一个目录,其中包含大量不相关的示例)。我们可以通过将代码放在软件包中来改进整体组织结构。
使用软件包可以按照功能对代码进行分组。软件包还为类提供一个唯一的名称空间。下面我们将研究一个分步示例,该示例将 Address
类放进一个特定的软件包中。
在修改任何代码之前,必须首先为将要创建的软件包选择一个名称。由于我们的 Address
类将要用在(假设的)通讯录应用程序中,因此我们将使用 "addressbook
" 作为软件包名称。
接下来,我们必须在文件系统本身上创建一个 addressbook
目录。此目录中将包含被指定为属于 addressbook
软件包的任何类的 .fx
源文件。您可以在任何所需的位置创建此目录;在本例中我们将使用 /home/demo/addressbook
,但是,这些脚本必须位于与软件包名称(在本例中为 addessbook
)相匹配的目录中。
现在,请转到 addressbook
目录并创建 Address.fx
源文件。将下面的源代码粘贴到该文件中。第一行提供软件包声明,它声明此类属于 addressbook
软件包:
package addressbook; |
请注意,如果存在软件包声明,它必须单独出现在源文件的第一个代码行中。每个源文件中只允许有一个软件包声明。
接下来,我们必须为 Address
类及其变量添加 public
关键字:
package addressbook; |
此关键字是五个可用的访问修饰符之一。我们将在下一课研究访问修饰符。现在,您只需知道 public
使这些代码可供其他类和脚本访问即可。
仍在 addressbook
目录中,使用 javafxc Address.fx
命令按照通常的方式编译此源文件。(在较大的软件项目中,可通过更复杂的方法从多个软件包生成代码,但在本例中编译此目录中的源代码即可。)在编译之后,此目录中将包含所生成的 .class
文件。
现在我们可以测试经过修改的 Address
类。但是,我们将首先回到父目录 /home/demo
。在这里,我们将创建一个名为 packagetest.fx
的简单脚本,该脚本用来测试 addressbook
软件包的用法。
我们可以通过两种方法来访问此类:
// Approach #1 |
方法 1 使用完全限定类名(现在为 addressbook.Address
)创建一个对象。与其他方法相比,此方法可能显得过于繁琐(尤其是在大型脚本中),但是您仍应当知道有这么一种方法。
// Approach #2 |
方法 2 使用 import 关键字,该关键字允许现在在脚本中的任何位置使用简称 (Address
)。建议在较大的程序中使用此方法,因为它是自说明的。一看就知道每个类属于哪个软件包。