如何初始化使用自定义 class 加载程序动态加载的 class?
How can I initialize a class that was dynamically loaded with a custom class loader?
假设我有一个使用自定义 class 加载器加载的 class
Class<?> clz = myClassLoader.loadClass("classLoaders.Test");
如何在不创建实例、了解其成员或使用反射的情况下初始化 class(运行 其静态初始化程序)?
要确保 class 已初始化,请使用 initialize
参数的 true
值调用 Class.forName(String name, boolean initialize, ClassLoader loader)
。
Class<?> clz = Class.forName("classLoaders.Test", true, myClassLoader);
假设我有一个使用自定义 class 加载器加载的 class
Class<?> clz = myClassLoader.loadClass("classLoaders.Test");
如何在不创建实例、了解其成员或使用反射的情况下初始化 class(运行 其静态初始化程序)?
要确保 class 已初始化,请使用 initialize
参数的 true
值调用 Class.forName(String name, boolean initialize, ClassLoader loader)
。
Class<?> clz = Class.forName("classLoaders.Test", true, myClassLoader);