728x90
반응형
SMALL
진짜 어려울 게 하나도 없는 Package 개념에서 헷갈리는 딱 한가지만을 정리하고자 한다.
보통 패키지 구조는 다음과 같다.
- a
- b
- c
- d
- e
- f
그리고 이 구조는 파일시스템에서 디렉토리의 구조와 백퍼센트 일치해야 한다.
근데 이게 중요한게 아니고 이 구조라면 패키지는 몇개일까? 6개다.
a/a.b/a.c/a.c.d/a.c.e/a.c.f
즉, a안에 b가 있으면 a 패키지에 포함 아닌가요? 절대 아니다. a랑 a.b랑은 완전히 다른 패키지이다. 사람이 볼때야 저게 a안에 b처럼 보이지만 자바는 둘을 완전히 다른 패키지로 판단한다. 이것만 좀 주의. 그래서 실제로 만약 특정 클래스에서 a.c와 같은 구조를 가진 패키지 전체를 임포트해도 a.c.d 패키지안에 있는 클래스 사용하려면 따로 임포트해야 한다. 다음이 그 대답이다.
다음과 같은 패키지 구조를 가질 때 Order 클래스에서 User와 UserService를 임포트 할 땐 이렇게 한다.
즉, user와 user.service는 완전히 다른 패키지라는 이야기이다. 이것만 헷갈리지말자!
728x90
반응형
LIST
'JAVA의 가장 기본이 되는 내용' 카테고리의 다른 글
캡슐화 (0) | 2024.03.26 |
---|---|
Class 레벨의 접근제어자 (0) | 2024.03.26 |
생성자 - this()와 오버로딩 (0) | 2024.03.26 |
객체 지향 프로그래밍 (0) | 2024.03.26 |
NullPointerException (0) | 2024.03.25 |