Мастерство Java Packages: Создание, импорт и лучшие практики
Что такое Package в Java?
PACKAGE в Java — это коллекция классов, подпакетов и интерфейсов. Он помогает организовать ваши классы в структуру папок и упрощает их поиск и использование. Что еще важнее, он улучшает повторное использование кода.
Каждый пакет в Java имеет уникальное имя и организует свои классы и интерфейсы в отдельное пространство имен, или группу имен.
Хотя интерфейсы и классы с одинаковым именем не могут появляться в одном пакете, они могут появляться в разных пакетах. Это возможно за счет назначения отдельного пространства имен каждому Java-пакету.
Синтаксис:
package nameOfPackage;
Следующее видео проведет вас через шаги создания пакета.
Нажмите здесь, если видео недоступно
Изучим пакет на примере. Мы определим класс и объект, а затем скомпилируем это в нашем пакете p1. После компиляции выполним код как Java-пакет.
Как создать пакет?
Создание пакета — простая задача:
- Выберите имя пакета
- Включите команду package как первую строку кода в вашем Java Source File.
- Исходный файл содержит классы, интерфейсы и т.д., которые вы хотите включить в пакет
- Скомпилируйте для создания Java-пакетов
Шаг 1) Рассмотрим следующую программу пакета в Java:
package p1;
class c1(){
public void m1(){
System.out.println("m1 of c1");
}
public static void main(string args[]){
c1 obj = new c1();
obj.m1();
}
}

Здесь,
- Чтобы поместить класс в пакет, в первой строке кода определите package p1
- Создайте класс c1
- Определение метода m1, который печатает строку.
- Определение метода main
- Создание объекта класса c1
- Вызов метода m1
Шаг 2) В следующем шаге сохраните этот файл как demo.java


Шаг 3) На этом этапе мы компилируем файл.

Компиляция завершена. Создан класс-файл c1. Однако пакет не создан? Следующий шаг содержит решение

Шаг 4) Теперь нам нужно создать пакет, используйте команду
javac –d . demo.java
Эта команда заставляет компилятор создать пакет.
Оператор “.” представляет текущую рабочую директорию.

Шаг 5) При выполнении кода создается пакет p1. Когда вы откроете Java-пакет p1, внутри вы увидите файл c1.class.

Шаг 6) Скомпилируйте тот же файл, используя следующий код
javac –d .. demo.java
Здесь “..” указывает на родительскую директорию. В нашем случае файл сохранится в родительской директории, то есть на диске C

Файл сохранен в родительской директории при выполнении вышеуказанного кода.

Шаг 7) Теперь скажем, вы хотите создать подпакет p2 внутри нашего существующего Java-пакета p1. Тогда мы изменим наш код как
package p1.p2;
class c1{
public void m1() {
System.out.println("m1 of c1");
}
}

Шаг 8) Скомпилируйте файл

Как видно на скриншоте ниже, создается подпакет p2 с классом c1 внутри пакета.

Шаг 9) Для выполнения кода укажите полностью квалифицированное имя класса, то есть имя пакета, за которым следует имя подпакета, за которым следует имя класса —
java p1.p2.c1

Так пакет выполняется и выдает вывод «m1 of c1» из файла кода.

Как импортировать пакет
Чтобы создать объект класса (упакованного в пакет), в вашем коде вы должны использовать его полностью квалифицированное имя.
Пример:
java.awt.event.actionListner object = new java.awt.event.actionListner();
Но ввод длинного разделенного точками пути пакета для каждого класса может стать утомительным. Вместо этого рекомендуется использовать оператор import.
Синтаксис
import packageName;
После импорта вы можете использовать класс без указания его полностью квалифицированного имени.
import java.awt.event.*; // * означает, что импортируются все классы в этом пакете import javax.swing.JFrame // здесь импортируется только класс JFrame // Использование JFrame f = new JFrame; // без полностью квалифицированного имени.
Пример: Импорт пакета
Шаг 1) Скопируйте код в редактор.
package p3;
import p1.*; // импортирует классы только в пакете p1, НЕ в подпакете p2
class c3{
public void m3(){
System.out.println("Method m3 of Class c3");
}
public static void main(String args[]){
c1 obj1 = new c1();
obj1.m1();
}
}
Шаг 2) Сохраните файл как Demo2.java. Скомпилируйте файл командой javac –d . Demo2.java
Шаг 3) Выполните код командой java p3.c3
Пакеты — важные моменты:
- Чтобы избежать конфликтов имен, пакетам дают имена доменного имени компании в обратном порядке. Например: com.guru99, com.microsoft, com.infosys и т.д.
- Когда имя пакета не указано, класс находится в пакете по умолчанию (текущая рабочая директория), и сам пакет не имеет имени. Поэтому вы могли выполнять задания ранее.
- При создании пакета следует следить, чтобы оператор создания пакета был написан перед любыми другими операторами import
// не допускается import package p1.*; package p3; // правильный синтаксис package p3; import package p1.*;
Пакет java.lang импортируется по умолчанию для любого класса, который вы создаете в Java.
Java API очень обширный, содержит классы, которые могут выполнять почти все ваши программные задачи — от манипуляции структурами данных до сетевого взаимодействия. Чаще всего вы будете использовать API-файлы в своем коде. Документацию API можно посмотреть здесь.
java
- Развертывание Java EE приложений на Microsoft Azure: пошаговое руководство
- Создание бесшовного пользовательского опыта: чертеж UX-дизайна
- Создание списков строк в VHDL: лучшие практики и пример
- Как создать самопроверяющийся тестбенч в VHDL — практическое руководство
- Реализация динамического связного списка в VHDL с защищенными типами и указателями доступа
- Создание массива объектов в Java: пошаговое руководство
- Генерация случайных чисел в Java: Практическое руководство с Random и Math.random
- Чтение файлов в Java с BufferedReader — Практическое руководство с примерами
- Конвертация char в String в Java — практические примеры и лучшие практики
- Реверс строки в Java с использованием рекурсии — пошаговое руководство