首页 新闻 会员 周边

关于继承和方法执行次序的问题

0
悬赏园豆:20 [已关闭问题] 关闭于 2011-08-05 15:15

一段代码如下:
public class ClassA {
  public ClassA() { }
 
  public virtual void FunA() {}
  public virtual void FunB() {}
}

public class ClassB {
  public ClassB() { }
 
  public override void FunA() {}
  public override void FunB() {}
}

public class ClassC {
  public ClassC() { }
 
  public override void FunA() {}
  public override void FunB() {}
}

public class ClassD {
  public ClassD() { }
 
  public override void FunA() {}
  public override void FunB() {}
}

ClassD instance = new ClassD();
怎么写可以在new ClassD时,按照
ClassA.FunA
ClassB.FunA
ClassC.FunA
ClassD.FunA
ClassA.FunB
ClassB.FunB
ClassC.FunB
ClassD.FunB
的次序执行,在new ClassC时,按照
ClassA.FunA
ClassB.FunA
ClassC.FunA
ClassA.FunB
ClassB.FunB
ClassC.FunB
的次序执行,在new ClassB时,按照
ClassA.FunA
ClassB.FunA
ClassA.FunB
ClassB.FunB
的次序执行?

笨雷雷的主页 笨雷雷 | 初学一级 | 园豆:168
提问于:2011-01-20 16:32
< >
分享
所有回答(2)
0

每个override的函数里写一句base.FunA()或者base.FunB()再写自己的逻辑就好了吧?

Gray Zhang | 园豆:17610 (专家六级) | 2011-01-20 18:56
支持
支持(0) 反对(0) Shiaupo | 园豆:272 (菜鸟二级) | 2011-01-24 13:34
0

连个继承都没有,咋执行。。。

ABCD之间根本就灭有关系啊。。。

xiao_p | 园豆:608 (小虾三级) | 2011-03-01 00:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册