我有一个字符串(str),它包含类名,并希望根据字符串值调用该类的方法,我该如何实现?
实施例。
如果str =“classA”我想调用方法classA.domatrix() 如果str =“classB”则classB.domatrix()
答案 0 :(得分:2)
这可能会有所帮助
String str = "ClassA";
Class.forName(str).newInstance();
注意:它应该有一个默认的无参数构造函数。也预先包含该类的包名称。
答案 1 :(得分:0)
你可以做到
if(str.equals("ClassA"))
ClassA.domatrix();
else if(str.equals("ClassB"))
ClassB.domatrix();
我们不能在这里使用switch,因为switch不能用于字符串,但是在switch case中最新版本的jdk支持字符串。
或其他解决方案是使用enum
。