回 帖 发 新 帖 刷新版面

主题:基础问题

A类 有方法 public virtual void test() 
B类继承自A类,有方法 public new void test() 
如下实例化: 
A a = new B(); 
a.test(); 
会调用哪个类中的TEST方法?
要是把第二行改为:
public override void test() 又是什么结果呢?
而且"A a = new B();"是什么意思哦???

回复列表 (共1个回复)

沙发

第一种情况调用的是A类的方法,
第二种情况调用的是B类overide的方法。
这种做法是上转型对象。
建议楼主以后对于此类问题先自已写写代码试验一下。

我来回复

您尚未登录,请登录后再回复。点此登录或注册