gpt4 book ai didi

java - 反射/类 -> 命名类

转载 作者:行者123 更新时间:2023-12-01 12:55:51 26 4
gpt4 key购买 nike

我想知道在使用 CustomClassLoader 加载类后如何能够正常使用它。

Main.java

...
Class <?> clazz = customClassLoader.get("MyClass");
MyClass myClass = _____________________; //fill in the blank, please

如何将 clazz 放入 MyClass,这样我就不必使用 getConstructor()、getMethod() 等所有麻烦的东西?

谢谢。

最佳答案

你不能,因为源文本中有 MyClass...

MyClass myClass = ...;

...要求 MyClass 在编译时可用。

这里通常的解决方案是使用编译时可用的接口(interface),并让MyClass实现该接口(interface)。

Class <?> clazz = customClassLoader.get("MyClass");
TheInterface myClass = (TheInterface)clazz.newInstance();
myClass.someInterfaceMethod();

关于java - 反射/类 -> 命名类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23906871/

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