KoreanFoodie's Study
6-2. 패키지 : 자바 패키지의 개념과 예제 본문
패키지
자바에서는 클래스를 체계적으로 관리하기 위해 패키지를 사용한다. 패키지의 물리적인 형태는 파일 시스템의 폴더이다.
패키지는 단순히 파일 시스템의 폴더 기능만 하는 것이 아니라 클래스의 일부분이다. 패키지는 클래스를 유일하게 만들어주는 식별자 역할을 한다. 패키지는 클래스를 유일하게 만들어주는 식별자 역할을 한다. 클래스 이름이 동일하더라도 패키지가 다르면 다른 클래스로 인식한다. 클래스의 전체 이름은 "패키지명+클래스명"인데, 패키지가 상/하위로 구분되어 있다면 도트(.)를 이용해 표현한다.
상위패키지.하위패키지.클래스
클래스를 이동시킬 때는 패키지 전체를 이동시켜야 한다. 즉, myPackage 내의 myClass를 yourPackage로 옮긴다면, 해당 클래스는 사용할 수 없게 된다!
패키지 선언
패키지는 클래스를 컴파일 하는 과정에서 자동적으로 생성되는 폴더이다. 컴파일러는 클래스에 포함되어 있는 패키지 선언을 보고, 파일 시스템의 폴더로 자동 생성시킨다.
package 상위패키지.하위패키지;
public class ClassName { ... }
// 예시 : com.samsung.projectname
패키지 선언이 포함된 클래스를 컴파일할 경우, -d 옵션을 추가하여 패키지가 생성될 경로를 다음과 같이 지정해야 한다.
javac -d . ClassName.java // 현재 폴더에 생성
javac -d C:\Temp\bin ClassName.java // C:\Temp\bin 폴더에 생성
만약 다른 패키지에 같은 클래스 명이 있다면, 하위 패키지까지 제대로 써 주어야 한다.
import pack1.one.same;
import pack2.two.same;
/// Code here...
pack1.one.same c1 = new pack1.one.same();
pack2.one.same c2 = new pack2.two.same();
'Tutorials > Java' 카테고리의 다른 글
8-1. 자바 인터페이스의 역할과 선언, 구현 예제 살펴보기 (0) | 2021.09.15 |
---|---|
7. 자바의 상속 : 타입 변환과 다형성 (0) | 2021.09.15 |
6-3. 어노테이션(Annotation) : 자바 어노테이션 개념과 예제 (0) | 2021.09.14 |
6-1. 정적 멤버와 static : 정적 메소드, 정적 초기화 블록, 싱글톤 (0) | 2021.09.14 |
5. 자바 참조 타입 : 데이터 타입과 메모리 (0) | 2021.09.14 |
Comments