모든 Java 프로그램은 JVM(Java Virtual Machine)에서 실행됩니다. 컴파일 후 Java 클래스는 플랫폼 및 머신 독립적인 바이트코드로 변환되며, 컴파일된 클래스는 .class 파일로 저장됩니다. 우리가 그것을 사용하려고 할 때마다 ClassLoader는 클래스를 메모리에 로드합니다. 이러한 클래스는 이름으로 참조될 때 Java 환경에 도입됩니다. 클래스가 실행되기 시작하면 클래스 로드는 클래스 로더에 의해 수행되며 main() 메서드는 클래스를 시작하는 한 가지 방법입니다.
Java 9의 클래스 로더에는 몇 가지 사소한 변경 사항이 있습니다.
public class ClassLoaderTest { public static void main(String args[]) { System.out.println("Class Loader Test"); ClassLoaderTest test = new ClassLoaderTest(); try { test.showClassLoaders(); } catch(ClassNotFoundException cnfe) { System.out.println(cnfe.getMessage()); } } public void showClassLoaders() throws ClassNotFoundException { System.out.println("Classloader of this class: " + <strong>ClassLoaderTest.class.</strong><strong>getClassLoader()</strong>); System.out.println("Classloader of Permission: " + <strong>java.sql.SQLPermission.class.</strong><strong>getClassLoader()</strong>); System.out.println("Classloader of LinkedList: " + <strong>java.util.LinkedList.class.</strong><strong>getClassLoader()</strong>); return; } }
<strong>Class Loader Test Classloader of this class: jdk.internal.loader.ClassLoaders$AppClassLoader@504bae78 Classloader of Permission: jdk.internal.loader.ClassLoaders$PlatformClassLoader@299a06ac Classloader of LinkedList: null</strong>
위 내용은 Java 9의 클래스 로더에 대한 변경 사항은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!