Java 클래스는 바이트 코드 형식으로 저장됩니다. .class 파일에서 컴파일 후. 클래스로더 자바 프로그램의 클래스를 메모리로 로드 필요할 때. ClassLoader는 계층적이므로 클래스 로드 요청이 있으면 상위 클래스 로더에 위임됩니다. .
ClassLoader 유형 Java에서는 다음과 같이 제공됩니다.
- 부트스트랩 클래스 로더
- 확장 클래스 로더
- 시스템 클래스 로더
예시
public class ClassLoaderTest { public static void main(String[] args) { System.out.println("class loader for this class: " + ClassLoaderTest.class.getClassLoader()); System.out.println("class loader for DNSNameService: " + sun.net.spi.nameservice.dns.DNSNameService.class.getClassLoader()); System.out.println("class loader for HashMap: " + java.util.HashMap.class.getClassLoader()); } }
출력
class loader for this class: sun.misc.Launcher$AppClassLoader@73d16e93 class loader for DNSNameService: sun.misc.Launcher$ExtClassLoader@70dea4e class loader for HashMap: null