먼저, 클래스패스(classpath)라는 개념을 소개하겠습니다. 클래스패스는 컴파일된 클래스 파일, xml, 속성, 기타 구성 파일이 위치한 디렉터리를 의미합니다. 예를 들어 Maven 프로젝트인 경우 클래스 경로는 "프로젝트 이름/대상/클래스"입니다. 일반 프로젝트인 경우 "프로젝트 이름/bin" 또는 "프로젝트 이름/빌드/클래스" 등이 될 수 있습니다. .
getResource는 바이트코드 객체에 의해 호출되는 java.lang.Class의 메소드입니다.
(권장 튜토리얼: java 입문 프로그램)
getResource는 문자열 매개변수를 허용합니다. "/"로 시작하면 클래스 경로의 루트 디렉토리에서 발견됩니다(하위 디렉토리는 재귀적으로 검색되지 않습니다). "/"로 시작하지 않습니다. 처음에는 getResource를 호출하는 바이트코드 객체가 있는 디렉터리에서 검색합니다. (하위 디렉터리는 재귀적으로 검색되지 않습니다.)
예:
@Test public void test() { System.out.println(Test1.class.getResource("")); System.out.println(Test1.class.getResource("/")); System.out.println(Test1.class.getResource("Test1.class")); System.out.println(Test1.class.getResource("/Test1.class")); }
첫 번째 문장인 Test1은 com.trs.javase 아래에 있으므로 Test2.class에서 호출하면 "xxx.com.trs.javase"가 출력됩니다. "가 출력됩니다. .trs.javase.subpackage”.
두 번째 문장은 클래스 경로의 루트 디렉터리를 출력합니다.
세 번째 문장은 Test1.class가 위치한 디렉터리를 출력합니다.
네 번째 문장인 Test1.class는 클래스패스의 루트 디렉터리에 없으므로 null이 출력됩니다.
출력 결과:
file:/D:/eclipse-workspace/javase/bin/com/trs/javase/ file:/D:/eclipse-workspace/javase/bin/ file:/D:/eclipse-workspace/javase/bin/com/trs/javase/Test1.class null
(추천 비디오 튜토리얼: java 비디오 튜토리얼)
위 내용은 Java의 getResource() 메소드 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!