🏹 소스파일 구성 순서
- package 문
- import 문
- 클래스 선언
🏹 패키지 (package)
서로 관련된 클래스 혹은 인터페이스의 묶음 (폴더와 비슷한 구조)
패키지는 서브 패키지를 가질 수 있으며, ' . '으로 구분함
🏹 패키지의 선언
- 소스파일 첫 번째 문장에 단 한 번 선언
- 모든 클래스는 하나의 패키지에 속함
- 패키지가 선언되지 않은 클래스는 자동적으로 이름 없는 패키지(default)에 속함
💥 이름 없는 패키지는 다른 패키지에서 해당 패키지의 클래스들을 사용할 수 없음
⭐ 패키지는 모두 소문자로 작성하며, 3레벨 이상으로 작성한다. 예) com.naver.cafe
🏹 import 문
사용할 클래스가 속한 패키지를 지정하는데 사용
- import 문을 사용하면 클래스를 사용할 때 패키지명 생략 가능
- java.lang 패키지의 클래스는 import 하지 않고도 사용 가능
String, Object, System …
🏹 import 문의 선언
- 지정된 패키지에 포함된 클래스를 import 할 때 사용
- import 문은 컴파일 시에 처리되므로 프로그램의 성능에 영향을 미치지 않음
import java.util.*; → java.util 패키지 내의 모든 클래스
import java.*; → 서브 패키지에 속한 모든 클래스는 import 불가능
💥 이름이 같은 클래스가 속한 두 패키지를 import할 때는
클래스 앞에 패키지명을 붙여 구분해주어야 함
⭐ 어떤 클래스들이 사용되었는지 알 수 있도록 클래스마다 import 문을 각각 써주자!