.class 에서 바이트 코드를 읽고 메모리에 저장하는 역할 수행
작성한 코드 대부분은 app 클래스 로더가 읽음.
클래스를 읽을 때, 부모 클래스에게 먼저 요청. 모든 부모 클래스가 읽지 못했을 때 자신이 읽음.
자신도 읽지 못하면 -> ClassNotFoundException
로딩 -> 링크 -> 초기화
부트 스트랩 클래스 로더 - JAVA_HOME\lib에 있는 코어 자바 API를 제공(네이티브 코드로 구현되어 있어 일반적으로 참조 힘듦)
플랫폼 클래스 로더 - JAVA_HOME\lib\ext 폴더 또는 java.ext.dirs 시스템 변수에 해당하는 위치에 있는 클래스를 읽음
애플리케이션 클래스 로더 - 애플리케이션 클래스 패스(애플리케이션 실행 시 주는 -classpath 옵션 또는 java.class.path 환경 변수의 값에 해당하는 위치)에서 클래스를 읽음
로딩
링크
초기화