什么时候从属性getter或setter中抛出异常是合适的?什么时候是不合适的?为什么?链接到这个主题的外部文档会很有帮助...令人惊讶的是,谷歌收视率很低。
发布于 2009-09-28 18:07:21
这些都记录在MSDN中(在其他答案中链接),但这里有一个一般的经验法则……
在setter中,如果您的属性应该在type之上和之外进行验证。例如,名为PhoneNumber的属性可能应该具有正则表达式验证,并且如果格式无效,则应该抛出错误。
对于getter,可能是当值为null时,但最有可能的是您希望在调用代码中处理该问题(根据设计指南)。
https://stackoverflow.com/questions/1488472
复制相似问题