すべての Java プログラムは Java 仮想マシン (JVM) 上で実行されます。コンパイル後、Java クラスは プラットフォーム および マシン非依存バイトコード に変換され、コンパイルされたクラスは .class ファイルとして保存されます。これを使用しようとすると、ClassLoader がクラスをメモリにロードします。これらのクラスは、名前で参照されると Java 環境に導入されます。クラスが実行を開始すると、クラスのロードはクラス ローダーによって行われ、main() メソッドはクラスを開始する 1 つの方法です。
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 中国語 Web サイトの他の関連記事を参照してください。