Java ClassLoader setPackageAssertionStatus()方法与示例

ClassLoader类setPackageAssertionStatus()方法

  • setPackageAssertionStatus()方法在java.lang包中可用。

  • setPackageAssertionStatus()方法用于设置命名程序包的程序包断言状态,此默认状态确定将来实例化的类属于命名程序包或其任何子程序包。

  • setPackageAssertionStatus()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • setPackageAssertionStatus()方法在设置包的声明状态时不会引发异常。

语法:

    public void setPackageAssertionStatus (String pack_name, boolean status);

参数:

  • 字符串pack_name –表示要设置其默认断言状态的程序包的名称。

  • 布尔状态–当此加载器加载的,属于给定命名包的类默认为true时,设置为true,否则返回false。

返回值:

此方法的返回类型为void,不返回任何内容。

示例

//Java程序演示示例 
//setLoader的void setPackageAssertionStatus()方法的声明 

public class setPackageAssertionStatusOfClassLoader {
 public static void main(String[] args) throws Exception {
  //载入类
  Class cl = Class.forName("setPackageAssertionStatusOfClassLoader");

  //相关的ClassLoader
  //类对象
  ClassLoader loader = cl.getClassLoader();

  //显示加载器
  System.out.println("loader Class: " + loader.getClass());

  //通过使用setPackageAssertionStatus()方法是设置 
  //给定包的断言状态
  loader.setPackageAssertionStatus("java.util", true);
 }
}

输出结果

loader Class: class jdk.internal.loader.ClassLoaders$AppClassLoader