文档

Java™ 教程
路径: 学习Java语言
课程:
首页 > 学习Java语言 >

问题和练习答案:创建和使用包

答案

问题1:假设你已经写了一些类。突然间,你决定将它们分成三个包,如下表所示。此外,假设这些类当前位于默认包中(它们没有package语句)。

包名 类名
mygame.server Server
mygame.shared Utilities
mygame.client Client

a. 你需要在每个源文件中添加什么代码来将每个类放在正确的包中?
答案1a:每个文件的第一行必须指定包:

Client.java 中添加:
package mygame.client;
Server.java 中添加:
package mygame.server;:
Utilities.java 中添加:
package mygame.shared;

b. 为了遵循目录结构,你需要在开发目录中创建一些子目录,并将源文件放入正确的子目录中。你需要创建哪些子目录?每个源文件应放在哪个子目录中?
答案1b:在 mygame 目录下,你需要创建三个子目录:clientservershared

mygame/client/ 中放置:
Client.java
mygame/server/ 中放置:
Server.java
mygame/shared/ 中放置:
Utilities.java

c. 你认为还需要对源文件进行其他任何更改才能正确编译吗?如果需要,是什么更改?
答案1c:是的,你需要添加导入语句。 Client.javaServer.java 需要导入 Utilities 类,可以通过以下两种方式之一实现:

import mygame.shared.*;
       --或--
import mygame.shared.Utilities;

此外,Server.java 需要导入 Client 类:

import mygame.client.Client;

练习

练习1:下载三个源文件:

a. 使用刚刚下载的源文件来实现你在问题1中提出的更改。
b. 编译修改后的源文件。(提示:如果你是从命令行调用编译器(而不是使用构建器),则从包含刚刚创建的mygame目录的目录中调用编译器。)答案1:使用这个解决方案的zip文件:mygame.zip
你可能需要更改你提出的导入代码以反映我们的实现。


上一页:问题和练习:创建和使用包