Java.lang.ClassLoader 类

java.lang.ClassLoader.clearAssertionStatus() 方法用于将该类加载器的默认断言状态设置为 false并丢弃与类加载器关联的任何包默认值或类断言状态设置。提供此方法是为了使类加载器忽略任何命令行或持久断言状态设置并"从头开始"。

语法

public void clearAssertionStatus()

参数

不需要参数。

返回值

void 类型。

异常

不适用。

示例:

下面的示例展示了如何使用 java.lang.ClassLoader.clearAssertionStatus() 方法。

import java.lang.*;

public class MyClass {
  public static void main(String[] args) throws ClassNotFoundException {
      //加载类
      Class cls = Class.forName("MyClass");

      //返回ClassLoader对象
      //与该类关联
      ClassLoader cL = cls.getClassLoader();
    
      //打印类加载器
      System.out.println("ClassLoader: ");
      System.out.println(cL.getClass());
    
      //打印父类加载器
      System.out.println("parent ClassLoader: ");
      System.out.println(cL.getParent()); 

      //设置默认断言状态为false
      cL.clearAssertionStatus();  
  }
}

上述代码的输出将是:

ClassLoader: 
class jdk.internal.loader.ClassLoaders$AppClassLoader
parent ClassLoader: 
jdk.internal.loader.ClassLoaders$PlatformClassLoader@7960847b