Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

폴더 또는 Java 패키지에서 런타임 시 클래스를 로드하는 방법


CLASSPATH를 사용하면 런타임에 모든 클래스를 로드할 수 있습니다.

.java 소스 파일과 마찬가지로 컴파일된 .class 파일은 패키지 이름을 반영하는 일련의 디렉토리에 있어야 합니다. 그러나 .class 파일의 경로는 .java 소스 파일의 경로와 같을 필요는 없습니다. −

와 같이 소스 및 클래스 디렉토리를 별도로 정렬할 수 있습니다.
<path-one>\sources\com\apple\computers\Dell.java
<path-two>\classes\com\apple\computers\Dell.class

이렇게 하면 소스를 공개하지 않고 다른 프로그래머에게 클래스 디렉토리에 대한 액세스 권한을 부여할 수 있습니다. 또한 컴파일러와 JVM(Java Virtual Machine)이 프로그램에서 사용하는 모든 유형을 찾을 수 있도록 이러한 방식으로 소스 및 클래스 파일을 관리해야 합니다.

클래스 디렉토리의 전체 경로인 \classes는 클래스 경로라고 하며 CLASSPATH 시스템 변수로 설정됩니다. 컴파일러와 JVM 모두 클래스 경로에 패키지 이름을 추가하여 .class 파일에 대한 경로를 구성합니다.

\classes가 클래스 경로이고 패키지 이름이 com.apple.computers라고 가정하면 컴파일러와 JVM은 \classes\com\apple\computers에서 .class 파일을 찾습니다.

클래스 경로에는 여러 경로가 포함될 수 있습니다. 여러 경로는 세미콜론(Windows) 또는 콜론(Unix)으로 구분해야 합니다. 기본적으로 컴파일러와 JVM은 현재 디렉토리와 Java 플랫폼 클래스가 포함된 JAR 파일을 검색하여 이러한 디렉토리가 자동으로 클래스 경로에 있도록 합니다.