如何在基类方法中终止子类方法继续执行..求大神帮忙

u1154598 2012-06-02 02:00:18
在父类中定义了一个方法
public virtual void A()
{

}
子类中继承了这个方法
public override void A()
{
base.A();
MessageBox.Show("");
}
能不能在基类方法A中不让子类的 messagebox 这段代码执行? 求救,


PS:如果做参数控制的话 子类太多,修改量太大....
...全文
135 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tellxp 2012-06-02
  • 打赏
  • 举报
回复
还是查找替换吧...
__天涯寻梦 2012-06-02
  • 打赏
  • 举报
回复
异常倒是能中断,但是中断了带来更大的麻烦
离子漂浮物 2012-06-02
  • 打赏
  • 举报
回复

public virtual bool A()
{

}


public override bool A()
{
if(base.A()){MessageBox.Show("");}
}


如果这样的话倒是有可能..
Saleayas 2012-06-02
  • 打赏
  • 举报
回复
可以。
base.A 抛出异常!
cnfixit 2012-06-02
  • 打赏
  • 举报
回复
把那句去掉……
你都override了,又想在override以后不按照override的方法来,情何以堪啊
wanbolantian 2012-06-02
  • 打赏
  • 举报
回复
父类什么知道子类中会有MessageBox.Show.......
SQL777 2012-06-02
  • 打赏
  • 举报
回复
这些都是由子类自己实现的了你还能控制??

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧