java - 什么更好? MyPojo.getList().add(Object) 还是 MyPojo.add()?

标签 java list

您有一个包含列表的对象:

public class MyPojo {
    private List<Object> list;
}

并且您想要将一个项目添加到此 pojo 的列表中。
什么更好?

1) 添加一个 getter,获取列表并向其中添加一个对象

public class MyPojo {
    private List<Object> list;
    public List<Object> getList() {
        return list;
    }
}
// and then use
new MyPojo().getList().add(Object);

2) 在 Pojo 中编写 addItem() ,将对象插入到列表中

public class MyPojo {
    private List<Object> list;
    public void addItem(Object item) {
        list.add(item);
    }
}
// and then use
new MyPojo().addItem(Object);

在这种情况下,保证代码质量的最佳实践是什么? 谢谢!

最佳答案

如果你可以自由选择,总是更喜欢第二种方式,即调用内部修改实例字段的方法。

在第一个中,您清楚地暴露了 List<Object>实例字段,这是一种非常糟糕的编码方式。你永远不应该采用这种做法。

关于java - 什么更好? MyPojo.getList().add(Object) 还是 MyPojo.add()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43234611/

相关文章:

java - 如何获取音频文件并解码为 Base64 字符串?

c++ - 搜索列表中的最后一个数据实例

javascript - 段落形式的随机列表

java - 使用 hibernate : psql: could not connect to server: Connection refused

java - MediaPlayer 服务不播放音乐

java - 使用 Javassist 编译的类的类路径

java - 为什么父类中的main方法由JVM执行?

python - 'file' 对象中超出范围的列表索引——Python

c#什么时候用List,什么时候用arraylist?

python - 什么符号 |在 Python 中是什么意思?