Java 類載入器 setDefaultAssertionStatus() 方法



描述

Java 類載入器 setdefaultassertionstatus() 方法為該類載入器設定預設斷言狀態。此設定決定了將來由該類載入器載入並初始化的類預設情況下是否啟用或停用斷言。

宣告

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

public void setDefaultAssertionStatus(boolean enabled)

引數

enabled − 如果由該類載入器載入的類將從此處預設啟用斷言,則將其設定為 true,如果將預設停用斷言,則將其設定為 false。

返回值

此方法不返回值。

異常

將類載入器的預設斷言狀態設定為 True 的示例

以下示例顯示了 java.lang.ClassLoader.setdefaultassertionstatus() 方法的使用。在此程式中,我們檢索了 ClassLoaderDemo 的類。然後使用 getClassLoader() 獲取所需的類載入器,並使用 getClass() 列印類載入器類,並使用 getParent() 方法列印父類載入器。現在,使用 setdefaultassertionstatus() 方法,我們將與類載入器關聯的預設斷言狀態設定為 true。

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());
  
      // sets the default assertion status for this class loader
      cLoader.setDefaultAssertionStatus(true); 
   }
} 

輸出

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

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

將類載入器的預設斷言狀態設定為 False 的示例

以下示例顯示了 java.lang.ClassLoader.setdefaultassertionstatus() 方法的使用。在此程式中,我們檢索了 ClassLoaderDemo 的類。然後使用 getClassLoader() 獲取所需的類載入器,並使用 getClass() 列印類載入器類,並使用 getParent() 方法列印父類載入器。現在,使用 setdefaultassertionstatus() 方法,我們將與類載入器關聯的預設斷言狀態設定為 false。

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());
  
      // sets the default assertion status for this class loader
      cLoader.setDefaultAssertionStatus(false); 
   }
} 

輸出

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

class jdk.internal.loader.ClassLoaders$AppClassLoader
jdk.internal.loader.ClassLoaders$PlatformClassLoader@4517d9a3
java_lang_classloader.htm
廣告