Java ClassLoader setPackageAssertionStatus()方法

java.lang.ClassLoader.setPackageAssertionStatus() 方法设置为指定包的包默认断言状态。包默认断言状态决定了在未来的初始化类属于指定包或它的任何“子包”的断言状态。

一个名为p封装的子包是名称以任何包“p”。例如,javax.swing.text的javax.swing中的子包,java.xml和java.lang.reflect都是Java的子包。

1 语法

public void setPackageAssertionStatus(String packageName, boolean enabled)

2 参数

packageName:此是它的包默认断言状态是要设置的包的名称。 null值指示命名的包是“current”。

enabled:其设置如果当前类装载器装载和属于指定包或任何其子包将默认启用断言,false如果他们将不得不断言在默认情况下禁用类。

3 返回值

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java ClassLoader setPackageAssertionStatus()方法
 */
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

 

热门文章

优秀文章