繁体   English   中英

Java:了解超类时对转换的反思

[英]Java: Reflection against casting when you know superclass

我不确定如何确定我的疑问,因此如果已经提出问题,请耐心等待。

假设我必须动态实例化一个对象。 该对象肯定是已知的不可变类A的子类的实例。我可以动态获取特定的实现类。

最好完全像我对目标类一无所知地使用反射,还是最好还是可以做类似的事情:

A obj = (Class.forName("com.package.Sub-A")) new A();

Sub-A extends A在哪里Sub-A extends A 目的是避免反射开销时间。

通常这是通过

Class.forName("com.package.Sub-A").getConstructor(param types).newInstance(param values)

为了避免反射过多,您只需缓存构造函数对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM