자바 패키지(Java package)는 자바 클래스들을 여러 이름공간으로 정리하며[1], 소속된 각 형에 대해 고유한 이름공간을 제공한다. 동일한 패키지 내의 클래스들은 서로의 package-private 및 protected 멤버들에 접근할 수 있다. 자바 패키지들은 JAR 파일이라는 압축 파일에 저장할 수 있으며, 클래스들을 하나씩이 아닌 묶음으로 더 빠르게 다운로드할 수 있게 한다.
자바 소스 파일에서 이 파일의 클래스나 클래스들이 속하는 패키지는 package
라는 키워드와 함께 지정된다. 이 키워드는 일반적으로 소스 파일에서 처음 오는 키워드이다. 하나의 패키지 선언을 소스 파일에 선언할 때에는 다음과 같이 할 수 있다:
package java.awt.event;
자바 소스 파일 안의 패키지 클래스들을 사용하려면 import
선언과 함께 패키지로부터 클래스들을 가져오는 것이 편리하다. 다음의 선언은
import java.awt.event.*;
java.awt.event
패키지로부터 모든 클래스들을 가져오며, 다음의 선언은
import java.awt.event.ActionEvent;
해당 패키지에서 ActionEvent
클래스만 가져온다.
이 import 선언 뒤에 단순한 클래스 이름을 사용하여 ActionEvent
클래스를 참조할 수 있다.:
ActionEvent myEvent = new ActionEvent();
클래스들은 import 선언 없이 직접 사용할 수도 있다. 예를 들어 다음은
java.awt.event.ActionEvent myEvent = new java.awt.event.ActionEvent();
import 선언을 우선할 필요가 없다.
java.lang 패키지는 import 문을 사용하지 않고도 사용 가능하다.