位置:首頁 > Java技術 > java.lang > java.lang.ClassLoader.setPackageAssertionStatus()方法實例

java.lang.ClassLoader.setPackageAssertionStatus()方法實例

java.lang.ClassLoader.setPackageAssertionStatus() 方法設置為指定包的包默認斷言狀態。包默認斷言狀態決定了在未來的初始化類屬於指定包或它的任何“子包”的斷言狀態。

一個名為p封裝的子包是名稱以任何包“p”。例如,javax.swing.text的javax.swing中的子包,java.xml和java.lang.reflect都是Java的子包。

聲明

以下是java.lang.ClassLoader.setPackageAssertionStatus()方法的聲明

public void setPackageAssertionStatus(String packageName, boolean enabled)

參數

  • packageName -- 此是它的包默認斷言狀態是要設置的包的名稱。 null值指示命名的包是“current”。

  • enabled -- 其設置如果當前類裝載器裝載和屬於指定包或任何其子包將默認啟用斷言,false如果他們將不得不斷言在默認情況下禁用類。

返回值

此方法不返回任何值。

異常

  • NA

例子

下麵的例子顯示java.lang.ClassLoader.setPackageAssertionStatus()方法的使用。

package com.yiibai;

import java.lang.*;

public class ClassLoaderDemo {

   public static void main(String[] args) throws Exception {
     
     Class cls = Class.forName("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.setPackageAssertionStatus("java.lang", true); 
   }
} 

讓我們來編譯和運行上麵的程序,這將產生以下結果:

class sun.misc.Launcher$AppClassLoader
sun.misc.Launcher$ExtClassLoader@35ce36