Java ClassLoader 的 getParent() 方法



描述

Java ClassLoader 的 getParent() 方法返回用於委託的父類載入器。某些實現可能使用 null 來表示引導類載入器。如果此類載入器的父級是引導類載入器,則這些實現中的此方法將返回 null。

宣告

以下是 java.lang.ClassLoader.getParent() 方法的宣告

public final ClassLoader getParent()

引數

返回值

此方法返回父 ClassLoader

異常

SecurityException - 如果存在安全管理器並且其 checkPermission 方法不允許訪問此類載入器的父類載入器。

獲取父類載入器示例

以下示例顯示了 java.lang.ClassLoader.getParent() 方法的使用。在此程式中,我們已檢索 ClassLoaderDemo 的類。然後使用 getClassLoader(),我們獲取所需的 ClassLoader 並使用 getClass() 列印類載入器類,並使用 getParent() 方法列印父類載入器。

package com.tutorialspoint;

public class ClassLoaderDemo {

  public static void main(String[] args) throws Exception {
     
      Class cls = Class.forName("com.tutorialspoint.ClassLoaderDemo");

      // returns the ClassLoader object associated with this Class
      ClassLoader cLoader = cls.getClassLoader();
    
      System.out.println(cLoader.getClass());
    
      // returns the parent ClassLoader
      System.out.println(cLoader.getParent());
   }
} 

輸出

讓我們編譯並執行上述程式,這將產生以下結果:

class jdk.internal.loader.ClassLoaders$AppClassLoader
jdk.internal.loader.ClassLoaders$PlatformClassLoader@4517d9a3

獲取子類父類載入器示例

以下示例顯示了 java.lang.ClassLoader.getParent() 方法的使用。在此程式中,我們已檢索 TestInnerClass 的類。然後使用 getClassLoader(),我們獲取所需的 ClassLoader 並使用 getClass() 列印類載入器類,並使用 getParent() 方法列印父類載入器。

package com.tutorialspoint;

public class ClassLoaderDemo {

   public static void main(String[] args) throws Exception {

      TestInnerClass innerClass  = new ClassLoaderDemo(). new TestInnerClass();
      Class cls = innerClass.getClass();

      // returns the ClassLoader object associated with this Class
      ClassLoader cLoader = cls.getClassLoader();

      System.out.println(cLoader.getClass());

      // returns the parent ClassLoader
      System.out.println(cLoader.getParent());
   }

   class TestInnerClass {
      // sample data
   }
} 

輸出

讓我們編譯並執行上述程式,這將產生以下結果:

class jdk.internal.loader.ClassLoaders$AppClassLoader
jdk.internal.loader.ClassLoaders$PlatformClassLoader@372f7a8d
java_lang_classloader.htm
廣告