gpt4 book ai didi

java - forName 和 GetClassLoader 的使用

转载 作者:太空宇宙 更新时间:2023-11-04 13:41:12 24 4
gpt4 key购买 nike

当我阅读有关Class的文档时,对于forName()方法,文档说:

Class.forName ("Foo")

相当于:

Class.forName ("Foo", true, this.getClass().GetClassLoader())

我不知道 this.getClass().GetClassLoader() 的含义是什么,也不知道它为什么这样工作,我只知道它是一个 ClassLoader,用于在 JVM 编译代码时加载类。

最佳答案

ClassLoader 是一个能够将字节码作为类加载到 VM 中的对象。请参阅here获取官方文档。

Class.forName(String name) 允许您在运行时加载类 - 提供的 String 可以在运行时确定。要实际加载一个类,需要一个 ClassLoader,因此选择加载调用对象的类的 ClassLoader 是默认的。您可以使用 this.getClass().getClassLoader() 访问该 ClassLoader。

第二个参数 - 默认为 true - 确定是否在必要时对类执行静态初始化(如果之前没有执行过)。

关于java - forName 和 GetClassLoader 的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31251305/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com