학습 내용
- package 키워드
- import 키워드
- 접근제어자
- 클래스패스
- CLASSPATH 환경변수
- -classpath 옵션
패키지
- 클래스를 구분짓는 폴더 개념
- 자바는 패키지의 가장 상위 디렉토리 ( root ) 에서 실행해야한다는 약속이 있기 때문에 해당 패키지로 가서 컴파일 하지 않는다.
- 소스에 가장 첫 줄에 있어야하고, 패키지 선언은 소스 하나에 하나만 있어야 한다.
- 패키지 이름과 위치한 폴더의 이름이 같아야 한다.
- 패키지 이름을 java 로 시작하면 안된다.
- 모든 클래스에는 정의된 클래스 이름과 패키지 이름이 있다. 이 둘을 합쳐야 완전하게 한 클래스를 표현한다고 할 수 있으며, FQCN ( Fully Qualified Class Name ) 이라고 한다.
패키지 이름 명명 규칙
- 패키지 이름은 모두 소문자여야 한다.
- 자바의 예약어를 사용하면 안된다. ( 예, int, static )
- 개발 패키지 표준은 정하는 것에 따라 지정하면 된다.
빌트-인 패키지 ( Built - in Package )
자바는 개발자들이 사용할 수 있도록 여러 많은 패키지 및 클래스를 제공한다.
가장 자주 쓰이는 패키지로는 java.lang 과 java.util 이 있다.
java.lang 은 자주 사용하는 패키지이지만 한번도 import 하여 사용한 적이 없다.
즉, 자바에서 java.lang 패키지는 아주 기본적인 것들이기 때문에 import 로 불러 오지 않아도 자바가 알아서 java.lang 의 클래스를 불러온다
예) String, System
Import 키워드
다른 패키지명에 있는 클래스를 찾지 못할때 사용한다.
패키지에 다수의 클래스를 import 하는 경우 import 패키지명.* 처럼 import 할 수 있다.
import static 의 경우, static 한 변수 ( 클래스 변수 ) 와 static 한 메소드를 사용하고자 할때 용이하다. ( 이것이 없다면, 클래스.함수, 클래스.변수 형태로 이용해야함 )
접근 제어자 ( Access Modifier )
접근 제어자는 클래스, 메소드, 인스턴스 및 클래스 변수를 선언할 때 사용된다. 자바에서 사용하는 접근지시자는 public, protected, pakage-private (접근 제어자 없음), private 로 총 네가지 이다.
- public - 누구나 접근 가능
- protected - 같은 패키지에 있거나, 상속 받는 경우 사용할 수 있다.
- package - private - 아무 접근제어자를 적어주지 않은 경우이며, package-private 라 불린다. 같은 패키지 내에서 접근 가능하다.
- private - 해당 클래스 내에서만 접근 가능하다.
해당 클래스 내 | 같은 패키지 내 | 상속받은 클래스 | improt 한 클래스 | |
public | O | O | O | O |
protected | o | O | O | X |
(package private ) | O | O | X | X |
private | O | X | X | X |
클래스 패스 ( Class Path )
클래스를 찾기위한 경로.
JVM 이 프로그램을 실행할 때, 클래스 파일을 찾는 데 클래스 패스를 사용한다.
'Live-Study' 카테고리의 다른 글
4 주차 - 클래스 ( Class ) (0) | 2021.04.27 |
---|---|
3주차 : 연산자 (0) | 2021.03.20 |
2주차 : Java 데이터 타입, 변수 그리고 배열 (0) | 2021.03.07 |
1주차 : JDK 와 JRE 차이 (0) | 2021.02.28 |
1주차 : JVM 구성 요소 (0) | 2021.02.28 |