Programming/자바(Java)

7-12 패키지 / 7-15 import문

먹보 개발자 2024. 10. 1. 11:32

서로 관련된 클래스의 묶음

클래스는 클래스 파일(*.class), 패키지는 폴더. 하위 패키지는 하위 폴더

클래스의 실제 이름(full name)은 패키지를 포함.(java.lang.String)

rt.jar는 클래스들을 압축한 (JDK설치경로\jre\lib에 위치 *java8 기준) 

*rt(runtime).jar(클래스 파일을 묶어놓은것)

java9부터는 module 개념이 들어가서 rt.jar파일이 없다

 

패키지 선언

- 패키지는 소스파일의 첫 번째 문장으로 단 한번 선언

- 같은 소스 파일의 클래스들은 모두 같은 패키지에 속하게 된다.

- 패키지 선언이 없다면 이름없는(unnamed, default pakage)패키지에 속하게 된다.

 

클래스 패스(classpath)

-클래스 파일(*.class)의 위치를 알려주는 경로(path)

-환경변수 classpath로 관리하며, 경로간의 구분자는 ';'를 사용

- classpath(환경변수)에 패키지의 루트를 등록해줘야 함.

 

import문

-클래스를 사용할 때 패키지 이름을 생략할 수 있다.

-컴파일러에게 클래스가 속한 패키지를 알려준다.

-import문은 패키지문과 클래스선언 사이에 선언한다.

-import문은 컴파일 시에 처리되므로 프로그램의 성능에 영향없음.

-이름이 같은 클래스가 속한 두 패키지를 import할 때는 클래스 앞에 패키지 명을 붙여줘야 한다.

 

static import문 *왠만하면 사용안하고 꼭 필요할때만 사용

-static멤버를 사용할 때 클래스 이름을 생략할 수 있게 해준다.

ex) import static java.lang.System.out; // System.out을 out으로만 참조 가능