loadClass
protected Class<?> loadClass(Stringname,
booleanresolve)
throws ClassNotFoundException
-
使用指定的二进制名称来加载类。此方法的默认实现将按以下顺序搜索类:
-
调用
findLoadedClass(String)来检查是否已经加载类。 -
在父类加载器上调用
loadClass方法。如果父类加载器为 null,则使用虚拟机的内置类加载器。 -
调用
findClass(String)方法查找类。
如果使用上述步骤找到类,并且 resolve 标志为真,则此方法将在得到的 Class 对象上调用
resolveClass(Class)方法。鼓励用 ClassLoader 的子类重写
findClass(String),而不是使用此方法。 -
-
-
参数:
-
name- 类的二进制名称 -
resolve- 如果该参数为 true,则分析这个类
返回:
- 得到的 Class 对象 抛出:
-
ClassNotFoundException- 如果无法找到类
-
本文详细介绍了ClassLoader中的loadClass方法的工作原理,包括如何通过类加载器的委托机制来加载类,以及如何通过findLoadedClass、父类加载器的loadClass方法、findClass方法等步骤来完成类的加载过程。
5216

被折叠的 条评论
为什么被折叠?



