让我说我有一个可变对象,它有一个变异的函数,并且在某些情况下不应该调用该函数。在这种情况下,我应该如何对调用函数的代码作出反应?
例如:
我可以想到两种表演方式,但都没有找到足够的表现:
返回魔术值,例如null
。这有一个问题,就是它不遵循Fail Faster意识形态,并使程序保持无效状态。
抛出异常。这是我觉得更适合的那个,但是我想避免创建一个新的Exception
,如果它已经存在一个满足该角色的那个。
对于第二种情况,我可以抛出ArgumentInvalidException
之类的东西
但我找不到这种情况的等价物。
此方案存在等效的现有异常?
注意:我们假设该函数已被记录,并明确表示在这些情况下永远不应调用该函数。如果开发人员无法阅读文档=)
,我认为它应该会失败答案 0 :(得分:1)
我定义了一个特定于此的应用程序异常。但是你可以在这里使用InvalidOperationException。