java – 抛出异常或阻止它?
发布时间:2020-12-15 05:12:22 所属栏目:Java 来源:网络整理
导读:问题是它是否更倾向于抛出异常或防止异常发生.这是一个游戏项目. IndexOutOfBoundsException与编码相关. 我有一个List E private AttributeList attributes; 一种通过索引获取项目的方法. public Attribute getAttribute (int index) { if (index 0 || index
问题是它是否更倾向于抛出异常或防止异常发生.这是一个游戏项目.
IndexOutOfBoundsException与编码相关. 我有一个List< E> private Attribute<List> attributes; 一种通过索引获取项目的方法. public Attribute getAttribute (int index) { if (index < 0 || index >= attributes.size()) index = 0; return attributes.get(index); } 在这种情况下,我默认为列表的第一个元素. 解决方法
快速失败通常是一个好主意:如果将-1的索引传递给该方法,则可能意味着调用该方法的代码中存在错误.如果您默默使用index = 0,(a)调用代码可能无法收到预期的结果,(b)您可能不会注意到该错误,直到它变得非常混乱.
所以我只想使用: public Attribute getAttribute (int index) { return attributes.get(index); } 如果需要,将抛出异常.如果调用此方法的代码没有错误,则永远不应抛出该异常. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |