gpt4 book ai didi

java - 谁首先在类加载过程中创建了 Class 对象?

转载 作者:太空狗 更新时间:2023-10-29 22:40:35 24 4
gpt4 key购买 nike

documentation我发现:

Class objects are constructed automatically by the Java Virtual Machine as classes are loaded and by calls to the defineClass method in the class loader.

我检查了the source code , 但没有找到要调用的地方 defineClass 例如从 loadClass 方法。请告诉我谁以及何时根据此方案调用 defineClass 方法:

scheme

图片source

最佳答案

defineClass() 方法在 ClassLoader#loadClass() 调用期间被调用。然而,这不是直接在 java.lang.ClassLoader 类中完成的,而是在它的一个子类中完成的,例如在 URLClassLoader#findClass() 中。

ClassLoader#defineClass() 的调用以对 native 方法之一的调用结束defineClass1()defineClass2() .这些方法的 C 实现可以在 OpenJDK 中找到 src/share/native/java/lang/ClassLoader.c .

关于java - 谁首先在类加载过程中创建了 Class<?> 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34070594/

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