模块 jdk.jdi

接口 ClassLoaderReference

所有父级接口:
Mirror , ObjectReference , Value

public interface ClassLoaderReference extends ObjectReference
来自目标 VM 的类加载器对象。 ClassLoaderReference 是一个 ObjectReference ,可以从目标 VM 额外访问特定于类加载器的信息。通过调用ReferenceType.classLoader() 获得实例ClassLoaderReference
自从:
1.3
参见:
  • 方法详情

    • definedClasses

      List <ReferenceType > definedClasses()
      返回由此类加载器定义的所有类的列表。不保证此list的顺序。返回的列表将包括所有引用类型,包括 隐藏类或接口 ,至少加载到准备点,以及未定义准备的类型(如数组)。
      返回:
      List of ReferenceType 对象镜像由此类加载器定义的类型。如果此类加载器未定义任何类型,则该列表的长度为 0。
    • visibleClasses

      List <ReferenceType > visibleClasses()
      返回此类加载器可以通过目标 VM 中的 ClassLoader::loadClass Class::forName 和字节码链接按名称找到的所有类的列表。也就是说,该类加载器已被记录为初始加载器的所有类。

      返回列表中的每个类都是由此类加载器创建的,方法是直接定义它或委托给另一个类加载器(请参阅 JVMS 5.3 )。

      返回的列表不包括 隐藏类或接口元素类型隐藏类或接口 的数组类。因为它们不能被任何类加载器发现

      可见类列表具有与类型命名空间相关的有用属性。特定类型名称在列表中最多出现一次。在此类加载器定义的类中使用该类型名称声明的每个字段或变量都必须解析为该单一类型。

      不保证返回列表的排序。

      请注意,与 definedClasses() VirtualMachine.allClasses() 不同,某些返回的引用类型可能未准备好。尝试对未准备好的引用类型(例如 fields() )执行某些操作将抛出 ClassNotPreparedException 。使用 ReferenceType.isPrepared() 确定是否准备了引用类型。

      返回:
      List of ReferenceType 对象镜像类,该类加载器可以通过名称找到这些类。如果没有类对该类加载器可见,则该列表的长度为 0。
      参见: