Spec-Zone .ru
спецификации, руководства, описания, API
|
Вопрос 1: Предположите, что Вы записали некоторые классы. Запоздало, Вы решаете, что они должны быть разделены на три пакета, как перечислено в таблице ниже. Кроме того предположите, что классы находятся в настоящий момент в пакете значения по умолчанию (они имеют нет package
операторы).
Имя пакета | Имя класса |
---|---|
mygame.server
|
Server
|
mygame.shared
|
Utilities
|
mygame.client
|
Client
|
a. Какую строку кода Вы должны будете добавить к каждому исходному файлу, чтобы поместить каждый class в правильный пакет?
Ответ 1a: первая строка каждого файла должна определить пакет:
Client.java
добавьте:package mygame.client;
Server.java
добавьте:package mygame.server;
:Utilities.java
добавьте:package mygame.shared;
b. Чтобы придерживаться структуры каталогов, Вы должны будете создать некоторые подкаталоги в своем каталоге разработки, и поместить исходные файлы в корректные подкаталоги. Какие подкаталоги следует создать? Какой подкаталог делает каждый исходный файл, входят?
Ответ 1b: В пределах mygame
каталог, Вы должны создать три подкаталога: client
, server
, и shared
.
mygame/client/
место:Client.java
mygame/server/
место:Server.java
mygame/shared/
место:Utilities.java
c. Вы думаете, что должны будете произвести какие-либо другие изменения в исходных файлах, чтобы заставить их скомпилировать правильно? Если так, что?
Ответ 1c: Да, Вы должны добавить операторы импорта. Client.java
и Server.java
потребность импортировать Utilities
class, который они могут сделать одним из двух способов:
import mygame.shared.*; --or-- import mygame.shared.Utilities;
Кроме того, Server.java
потребности импортировать Client
class:
import mygame.client.Client;
Упражнение 1: Загрузите три исходных файла:
a. Реализуйте изменения, Вы предложили рассматриваемый 1, используя исходные файлы, которые Вы только загрузили.
b. Скомпилируйте пересмотренные исходные файлы. (Подсказка: Если Вы вызываете компилятор из командной строки (в противоположность использованию разработчика), вызовите компилятор из каталога, который содержит mygame
каталог Вы только создали.) Отвечают 1: Загрузите этот файл zip решением: mygame.zip
Вы, возможно, должны были бы изменить свой предложенный код импорта, чтобы отразить нашу реализацию.