Объявление package в Java
Пакет файла указывают первой строкой -
слово package, имя пакета через
точку и точка с запятой. Имя пишут
строчными буквами, части разделяют
точками, как у доменного имени наоборот:
package blog.posts;
public class Post {
private String title;
public Post(String title) {
this.title = title;
}
public String getTitle() {
return title;
}
}
Класс без директивы package попадает
в безымянный пакет по умолчанию.
В учебных примерах в одном файле так
иногда удобно, в проектах почти всегда
задают явный пакет.
Чтобы создать объект класса из другого package, перед коротким именем пишут цепочку пакета и точку - полное имя типа:
blog.posts.Post post = new blog.posts.Post("news");
System.out.println(post.getTitle());
Вложенные пакеты записывают одной строкой
через точку. Класс Post для данных
может жить в blog.data, а класс
представления - в blog.view:
package blog.data;
public class Post {
public String label = "data";
}
package blog.view;
public class Post {
public String label = "view";
}
Если код находится в том же пакете, что
и класс, достаточно короткого имени
new Post(...) без префикса - импорт
для соседей в пакете не нужен:
package blog.posts;
public class PostList {
public Post first() {
return new Post("hello");
}
}
Создайте файл src/blog/employees/Employee.java:
объявите в нём package blog.employees;
и класс Employee с полем title.
В src/app/Main.java создайте объект
по полному имени blog.employees.Employee
и выведите заголовок.
Пусть в каталоге shop есть подкаталоги
cart и catalog. Создайте в каждом
файл Item.java с классом Item
так, чтобы типы принадлежали пакетам
shop.cart и shop.catalog.
В Main.java создайте по одному объекту
каждого класса и выведите оба.