加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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);
}

如果需要,将抛出异常.如果调用此方法的代码没有错误,则永远不应抛出该异常.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读