我有以下课程。
abstract class A{}
class B extends A{}
class C extends A{}
我需要创建一个这样的对象
A a = new B();
我在运行时得到子类的类名。所以,我需要使用反射来创建一个对象。
我已经做到了。
Class<?> klass = Class.forName(className);
现在我无法将这个类转换为子类。
我想实现
A a = klass.newInstance(); // returns Object
我希望将对象转换为子类(B
或者C
,在运行时决定)
我该怎么做呢?