在编译时寻找可以在不知道其名称的情况下定义类的最佳方法。在PHP中,这可以通过以下方式完成:
$className = 'testclass';
$myClass = new $className();
相比之下,已经在Java中,所以不要。我知道它是ClassLoader,但我不确定Android是否也这样做。我会要求提供具体的代码,甚至是如何做到的提示。
问候。
答案 0 :(得分:3)
您正在寻找的内容在Java中称为Reflection
:http://developer.android.com/reference/java/lang/reflect/package-summary.html
请注意,不能使用反射列出某个包中的类。
答案 1 :(得分:1)
您可以通过Class.forName加载现有课程;你的类也可以有一个静态初始化器static { /* your init code */ }
,这样它就可以在加载类时运行。
另请注意,所有JDBC驱动程序通常都是以这种方式加载的。