列表框值的新类实例

时间:2013-06-11 22:05:19

标签: java

我想使用由列表框中显示的字符串调用的类。

就像我一样

"的Class1" "等级2"

列表框中的

,并使用它:

new" Class1"

这可能吗?

2 个答案:

答案 0 :(得分:6)

可以使用反射。首先,找到班级。

Class<?> clazz = Class.forName("Class1");  // or a variable containing the class name

请注意,forName需要完全限定的类名(例如java.lang.String)。

然后在类对象上调用newInstance

Object instance = clazz.newInstance();

每个方法调用都会抛出您需要捕获的多个异常。

答案 1 :(得分:2)

如果您事先知道所有可能的类,则可以使用Factory pattern根据收到的字符串构建实例。

相关问题