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

Java-пакеты могут содержаться в сжатом виде в JAR-файлах. Обычно в пакеты объединяют классы одной и той же категории, либо предоставляющие сходную функциональность. Каждый пакет предоставляет уникальное пространство имён для своего содержимого. Допустимы вложенные пакеты. Классы, определённые без явно заданных модификаторов доступа (public, protected, private), видимы только внутри пакета.

Класс Пакет Подклассы Все
private Да  —  —
(без) Да Да  —
protected Да Да Да
public Да Да Да Да
  • private — доступ только внутри класса (наиболее рекомендуемый)
  • (без модификатора) — только внутри пакета (по умолчанию)
  • protected — межпакетный доступ только для подклассов
  • public — межпакетный доступ (наименее рекомендуемый)

Основные пакеты в J2SE 6.0

править
java.lang  — базовая функциональность языка и основные типы
java.util  — коллекция классов структур данных
java.io  — операции ввода-вывода
java.math  — математические операции
java.nio  — новый фреймворк для ввода-вывода
java.net  — операции с сетями, сокетами, DNS-запросами
java.security  — генерация ключей, шифрование и дешифрование
java.sql  — Java Database Connectivity (JDBC) для доступа к базам данных
java.awt  — иерархия основных пакетов для родных компонентов GUI
javax.swing  — иерархия пакетов для платформенно-независимых GUI-компонентов