如何将字符串转换为类名(how to convert string to class name)

2019-06-25 17:29发布

我想字符串转换为类的名称。 我的代码是:

app.actNum = "third.class";
        in.close();
                //on test
                   //  Intent intent = new Intent(this.context,Class.forName(app.actNum));



Intent dialogIntent = new Intent(getBaseContext(), Class.forName(app.actNum));

但得到

  get ClassNotFoundException on Class.forName android

Answer 1:

当调用Class.forName()你应该使用类名不带扩展名。 所以,如果你的被称为Test ,并在 mypackage.tests ,那么你应该使用:

Class.forName("mypackage.tests.Test")


Answer 2:

我觉得你有一些问题的路径。

首先,尝试并获得完整的路径:

String completePath = PathForClass.class.getResource(app.actNum).toString();

然后,所有你需要做的就是像你一样来调用它:

 Class.forName(completePath.replace(".class","")

(正如在其他的答案说,你要删除.class )。



文章来源: how to convert string to class name
标签: android class