我有一个继承自类“a”的类“b”。在“a”类中,有一些代码在事件不为空时执行操作。我需要该代码在应用程序的特定时间在类“b”中触发。所以在'b'中我订阅了一个新的处理程序(事件)。
如果我使用 throw new NotImplementedException();
行将自动生成的事件“按原样”保留在类“b”中,代码将按预期工作/运行。一旦我删除了 thow 异常,应用程序就不再按预期工作。
那么,throw new NotImplementedException
除了抛出异常外,还做了什么?
我意识到此时我可能正在尝试以错误的方式解决我的编码问题,而且我相信我会找到更好的方法来做到这一点(我仍在学习),但我的问题仍然存在。为什么该行会改变代码的结果?
编辑: 我意识到我的代码不是很具体。不幸的是,由于严格的政策,我不能。我在“a”类中有一个 if 语句。
if (someEvent != null)
当代码“工作”时,if 语句返回 true。当它没有按预期工作时,它会返回“false”。在类“b”中,应用程序“工作”(或 if 语句返回 true)的唯一时间是当我在类“b”的事件方法中有 throw new NotImplementedException();
行时在我附加新事件时自动生成。
最佳答案
想一想:如果你想用下面的方法将两个整数相加怎么办......
private int Add(int x, int y)
{
}
...并且内部没有执行此操作的代码(该方法甚至不返回整数)。这就是 NotImplementedException
的用途。
关于c# - "throw new NotImplementedException();"到底做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10193284/