Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Пакеты в Java: управление пространствами имён, доступом и организацией кода

Пакеты (packages) в Java используются для предотвращения конфликтов имён, контроля доступа, упрощения поиска и использования классов, интерфейсов, перечислений и аннотаций.

Пакет — группировка связанных типов, обеспечивающая защиту доступа и управление пространством имён.

Стандартные пакеты

Создание пакета

  1. Выбрать имя (обычно в нижнем регистре).
  2. Добавить оператор package имя; первой строкой в каждом исходном файле.
  3. Один package на файл, применяется ко всем типам в файле.
  4. Без package — класс попадает в default package (не рекомендуется).

Компиляция с пакетами


javac -d Destination_folder file_name.java

Создаётся папка с именем пакета, куда помещаются .class файлы.

Пример: пакет animals


// Animal.java
package animals;
interface Animal { void eat(); void travel(); }

// MammalInt.java
package animals;
public class MammalInt implements Animal {
    public void eat() { System.out.println("Mammal eats"); }
    public void travel() { System.out.println("Mammal travels"); }
    public static void main(String args[]) {
        new MammalInt().eat(); new MammalInt().travel();
    }
}

Компиляция: javac -d . Animal.java MammalInt.java → создаётся папка animals/ с .class файлами.

Ключевое слово import

Для использования класса из другого пакета:

import пишется после package и перед объявлением класса.

Структура директорий

Стандарт: обратное доменное имя компании (com.apple.computers).


// Dell.java
package com.apple.computers;
public class Dell { }

Путь: com/apple/computers/Dell.java. При компиляции с -d . создаётся зеркальная структура для .class файлов.

CLASSPATH

Полный путь к корню классов. Компилятор и JVM ищут .class файлы по пути: CLASSPATH/имя_пакета.

Управление CLASSPATH

ДействиеWindowsUnix (Bourne)
Показатьset CLASSPATHecho $CLASSPATH
Очиститьset CLASSPATH=unset CLASSPATH; export CLASSPATH
Установитьset CLASSPATH=C:\users\jack\java\classesCLASSPATH=/home/jack/java/classes; export CLASSPATH

java

  1. Пакеты в Python: структура, импорт и лучшие практики
  2. Ключевое слово final в Java: переменные, методы и классы
  3. Оператор instanceof в Java: полное руководство с примерами
  4. Статические вложенные классы в Java: использование, отличия и примеры
  5. Анонимные внутренние классы в Java: определение, синтаксис и практические примеры
  6. Паттерн Singleton в Java: как реализовать и безопасно использовать
  7. Рефлексия в Java: инспекция классов, методов и полей во время выполнения
  8. Освоение Java ObjectOutputStream: сериализация, методы и практические примеры
  9. Освоение Java Generics: создание переиспользуемого, типобезопасного кода
  10. Мастерство файловых операций в Java с java.io: создание, чтение, запись и удаление