Пакет - это способ логически организовать ваши занятия. Например, вы можете объявить package com.foo;
в верхней части каждого исходного файла, которые достаточно связаны, чтобы находиться в пакете com.foo
вместе. Компилятор Java и среда выполнения также ожидают, что вы поместите такие файлы в путь com/foo/
, где корнем этого пути является каталог или JAR в вашем пути к классам.
Файл JAR позволяет вам физически организовать ваши занятия. Вы можете взять любые файлы Java (и их родительские каталоги, соблюдая структуру каталогов, описанную выше) и сохранить их в файле JAR. Файл JAR может содержать файлы, принадлежащие нескольким пакетам, а несколько файлов JAR могут содержать файлы, принадлежащие одному и тому же пакету. Таким образом, JAR-файл - это в основном способ хранения нескольких файлов классов в одном физическом файле.
Существуют и другие особые характеристики файлов JAR. Например, вы можете указать значение Main-Class
в манифесте JAR, чтобы указать, какой класс является точкой входа для приложения, и вы можете печать пакетов в файле JAR ", Это означает, что все классы, определенные в этом пакете, должны быть заархивированы в одном и том же файле JAR. "