Java 将字符串转换为类

Java 将字符串转换为类,java,android,string,class,Java,Android,String,Class,我试图根据一些用户输入在一个活动和另一个活动之间移动 我正在尝试使用: String myClass = "some_user_input.class" Intent myIntent = new Intent(getApplicationContext(), myClass); startActivity(myIntent); …从一项活动转移到另一项活动 我可以这样做,直接在硬代码中引用我的新活动,而不尝试从文本(即classA.class)编译它,但是我希望能够通过传递一些用户编译的字符

我试图根据一些用户输入在一个活动和另一个活动之间移动

我正在尝试使用:

String myClass = "some_user_input.class"
Intent myIntent = new Intent(getApplicationContext(), myClass);
startActivity(myIntent);
…从一项活动转移到另一项活动

我可以这样做,直接在硬代码中引用我的新活动,而不尝试从文本(即classA.class)编译它,但是我希望能够通过传递一些用户编译的字符串来构建我的意图

例如,如果用户在编辑文本中输入B,我想转到
classB.class
如果用户输入Z,我想转到
classZ.class

是否有任何方法可以使用字符串编译我想去的类,然后将其转换为类


提前谢谢

反射机制允许您执行以下操作:

String myClass = "some_user_input";
Class<?> clazz = Class.forName(myClass);
Intent myIntent = new Intent(getApplicationContext(), clazz);
String myClass=“一些用户输入”;
Class clazz=Class.forName(myClass);
Intent myIntent=新的Intent(getApplicationContext(),clazz);
请注意,这些类应该包含在android清单XML中


还请注意,在本例中我没有处理异常:)

这是我使用
Class.forName()方法的解决方案:

String myClass = "foo.class";
Intent i = new Intent(getApplicationContext(), Class.forName(myClass));
startActivity(i);

你有多个软件包吗?我试过你的代码。它抛出类NotFoundException。知道为什么吗?它抛出一个异常,因为您需要将完整的包添加到字符串中,如
us.foobar.package.some\u user\u input