![](/img/trans.png)
[英]Why do i need private fields when implementing INotifyPropertyChanged
[英]Do I need to handle raising of documented exceptions when implementing interfaces
我正在通过在我的类中实现ICollection创建一个自定义C#集合,并注意到该接口定义的一些方法具有异常记录,即http://msdn.microsoft.com/en-us/library/0efx51xw(v=vs 0.110)的.aspx
我见过的用于实现接口的示例或文档似乎都没有谈到需要实现引发异常的问题。 每当接口中的方法文档显示该方法可能引发异常时,我应该检查每个条件并在我的实现代码中引发异常吗?
在记录接口时,通常包含xml文档以指示实现可能引发的异常。 这并不意味着实现必须能够抛出这些,只是它们可能抛出它们。
见Liskov的替代原则。 具体而言“子类的方法不应抛出新的异常,除非这些异常本身是超类型方法抛出的异常的子类型。” - http://en.wikipedia.org/wiki/Liskov_substitution_principle
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.