[英]Java Class Dynamically with Constructor parameter
我必须动态创建一个类,但我想使用类构造函数传递参数。
目前我的代码看起来像
Class<HsaInterface> _tempClass = (Class<HsaInterface>) Class.forName(hsaClass);
_tempClass.getDeclaredConstructor(String.class);
HsaInterface hsaAdapter = _tempClass.newInstance();
hsaAdapter.executeRequestTxn(txnData);
如何用参数调用构造函数?
你得到了, getDeclaredConstructor()
返回你应该使用的Constructor
对象。 此外,您需要将String
对象传递给该Constructor
的newInstance()
方法。
Class<HsaInterface> _tempClass = (Class<HsaInterface>) Class.forName(hsaClass);
Constructor<HsaInterface> ctor = _tempClass.getDeclaredConstructor(String.class);
HsaInterface hsaAdapter = ctor.newInstance(aString);
hsaAdapter.executeRequestTxn(txnData);
Class<HsaInterface> _tempClass = (Class<HsaInterface>) Class.forName(hsaClass);
// Gets the constructor instance and turns on the accessible flag
Constructor ctor = _tempClass.getDeclaredConstructor(String.class);
ctor.setAccessible(true);
// Appends constructor parameters
HsaInterface hsaAdapter = ctor.newInstance("parameter");
hsaAdapter.executeRequestTxn(txnData);
Constructor constructor = _tempClass.getDeclaredConstructor(String.class);
Object obj = constructor.newInstance("some string");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.