패키지란
클래스 묶음이다. 패키지에는 클래스 또는 인터페이스를 포함시킬 수 있으며,
서로 관련된 클래스들끼리 그룹 단위로 묶어 놓음으로써 클래스를 효율적으로 관리할 수 있다
패키지의 물리적 형태는 파일시스템의 폴더이다.
패키지는 클래스를 유일하게 만들어주는 식별자 역할입니다.
클래스의 전체이름은 "패키지명 + 클래스명"입니다.
패키지가 상,하위로 구분되어 있다면 도트(.)를 사용해서 표현할수 있다.
패키지 표현
상위패키지.하위패키지.클래스이름
패키지가 중요한 이유!
클래스만 따로 복사해서 다른 곳으로 이동하면, 클래스는 사용할 수 없다!!
(이동 시 패키지 전체를 이동시켜야한다.)
Student 클래스가 com.stu 패키지에 속해있다면
-Student 클래스의 전체이름: "com.stu.Student"
-실제 파일 시스템:com\stu\Student.class
패키지 선언
패키지는 클래스를 컴파일 하는 과정에서 자동적으로 생성되는 폴더이다.
컴파일러는 클래스에 포함되어 있는 패키지 선언을 보고, 파일 시스템의 폴더로 자동 생성시킨다.
패키지 이름은 개발자 임의의로 지어도 되지만,
지켜야 할 규칙이 존재한다.
숫자로 시작하거나, ‘_’ 과 ‘$’를 제외한 특수 문자를 사용 금지
java로 시작하는 패키지 금지(자바 표준 API에서만 사용)
int, static 등 자바 예약어 금지
모두 소문자로 작성하는 것이 관례
import 문
같은 패키지에 속하는 클래스들은 아무런 조건 없이 다른 클래스를 사용할 수 있지만, 다른 패키지에 속하는 클래스를 사용하려면 두 가지 방법 중 하나를 선택해야 한다.
🛺 1. 패키지와 클래스를 모두 기술(이러한 표현을 FQCN(Fully Qualified Class Name)이라고 함)
🛺 2. import 문을 사용
Default package
패키지 생성 없이 바로 java 디렉토리 하위에 class 파일 생성하는 것을 'defualt package를 사용' 이라고 말한다.