c# - "throw new NotImplementedException();"到底做了什么?

标签 c# .net

我有一个继承自类“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/

相关文章:

c# - 在 Scintilla.NET 中更改语法颜色

c# - 对用户没有可见形式的桌面通知程序

c# - 在 XAML 中禁用动画?

c# - Xrm.Page.data 为空

.net - Azure 开发运营 : Make Nuget-Package with AssemblyVersion

c# - 随机存取存储器中的索引数据库

c# - Windows Phone 8.1 的 SQLite.Net PCL 支持/解决方法

c# - 测量弦高

c# - OpenXML 编写器专栏

c# - SignalR OnConnected() 中的异步方法