Java从string实例化类

我有以下,

public interface SuperbInterface
public class A implements SuperbInterface
public class B extends A
public class C extends B

我想实例化C但我似乎得到了B,我做错了什么?

Class classz = Class.forName("C");
SuperbInterface superb = (SuperbInterface)classz.newInstance();

//Here when I debug it seems to be going to B.doWork() methods instead of C.doWork().
superb.doWork();
我唯一能想到的是你没有在C中覆盖doWork().

也许你已经尝试过覆盖但在方法名称或错误的参数中有一些拼写错误?

相关文章
相关标签/搜索