Class Path
.class 파일의 경로가 다를 경우?
Class Path
Class Path
- 프로젝트 내에서 소스 파일 작성, [이때 확장자는 파일명.java]로 생성 된다.
- 컴파일을 통해 하나의 소스 파일 당 하나의
.class
파일이 생성 된다.
- 하나의 프로젝트 단위로 보는 것이 아닌, 하나의 소스 파일 단위로 봐야 한다.
JVM(자바 가상 머신)
에 의해 해당 .java 파일이 컴파일
된다.
- 컴파일 진행을 위해서는 반드시
하나의 Main Method
가 존재 해야 한다.
- Cmd 창 내에서 .java 파일이 저장된 경로로 이동.
- Ex) cd C:/youngmin
- javac testfile.java [컴파일 수행]
CLASS PATH?
[Class 파일을 찾기 위한 경로를 사용자가 지정할 수 있다?]
JVM(자바 가상 머신)
의 클래스 탐색 경로 지정.
- .class 파일을 찾는 경로를 지정해 줄 수 있다 [Class Path]를 통해
절대 경로
C:\youngmin>set classpath=.;C:\youngmin/Myclass
- . 은 현재 Directory를 의미
- C:\youngmin\Myclass Directory도 Class Path 영역으로 지정 해준다.
상대 경로
C:\youngmin>set classpath=.;.\Myclass
- 현재 Directory 밑에 Myclass Directory를 상대 경로로 지정.
클래스 패스를 고정시키는 것은 상당히 안 좋은 방법이다.
Package [패키지]
Package
- 한 Directory 내에 동일 이름의 Class 파일을 둘 수 없다.
- 동일한 이름을 가진 Class를 사용하기 위해서는 경로를 달리 해줘야 한다.
→ Package 경로를 구분한다.
- Package는 Directory[폴더]와 같은 의미를 갖는다.
- 서로 다른 패키지의 두 Class는 Instance 생성 시 사용하는 이름이 다르다.
- 서로 다른 패키지의 두 Class File은 저장되는 위치가 다르다.
접근 수준 지시자
접근 수준 지시자
public
: 접근을 제한하지 않고 어디서든 접근 할 수 있도록 선언.
protected
: 상속 관계 또는 동일 패키지 내에서 접근 할 수 있도록 선언.
default
: 동일한 패키지 내에서만 접근 가능.
private
: 동일 클래스 내부에서만 접근 가능.
- 하나의 소스 파일에 두 개의
public 클래스(Class)
를 둘 수 없다.
- Package 선언이 없는 각각의 Class는
Default Package
로 정의된다.