: 패키지란 클래스의 묶음이다.
패키지에는 클래스 또는 인터페이스를 포함시킬 수 있고, 관련된 클래스들끼리 그룹 단위로 묶어 놓아 클래스를 효율적으로 관리할 수 있다.
클래스가 물리적으로 하나의 클래스파일(.class)인 것과 같이 패키지는 물리적으로 하나의 디렉토리 이다.
package 패키지명;
기본적으로 자바에서는 패키지를 선언하지 않은 경우에는 자동적으로 "이름없는 패키지(unnamed package)"를 제공한다.
따라서 패키지를 지정하지 않은 클래스는 자동적으로 이름없는 패키지에 속하게 된다.
: 다른 패키지의 클래스를 사용하려면 패키지명이 포함된 클래스 이름을 사용해야한다. 하지만 매번 패키지명을 붙여서 작성하는 것은 너무 불편한 일이다.
따라서 클래스의 코드를 작성하기 전에 import문으로 사용하고자 하는 클래스의 패키지를 미리 명시해주면 소스코드에 사용되는 클래스이름에서 패키지명은 생략이 가능하다.
이클립스에서 import 자동 생성 방법
"command + shift + o"
일반적인 소스파일의 구성은 다음의 순서로 되어 있다.
1. 패키지 선언문
2. import 선언문
3. 클래스 선언
import 선언하는 방법
import 패키지명.클래스명;
import 패키지명.*;
: import문을 사용하면 클래스의 패키지명을 생략할 수 있듯이, static import문을 사용하면 static 멤버를 호출할 때, 클래스 이름을 생략할 수 있다.
다음과 같이 사용이 가능하다.
import static java.lang.System.out;
import static java.lang.Math.*;
class StaticImportExl {
public static void main(String[] args) {
//System.out.println(Math.random());
out.println(random());
//System.out.println("Math.PI : " + Math.PI);
out.println("Math.PI : " + PI);
실행 결과
0.63452536325235234
Math.PI : 3.141592653589783