java - java类中集合属性和对象属性的getter和setter的最佳实践
问题描述
我有以下实现
public class PartGroup {
private Part iPart;
private ArrayList<Part> iParttList;
public Part getPart() {
return iPart;
}
public void setPart( Part aPart ) {
iPart = aPart;
}
public ArrayList<Part> getParttList() {
return iParttList;
}
public void setParttList( ArrayList<Part> aParttList ) {
iParttList = aParttList;
}
}
可以为 iParttList 和 iPart 设置设置器吗?我认为只有当消费者可以使用 getter 来获取集合的创建实例并清除或向集合中添加元素时才能使用 getter 是安全的,我应该删除 setter 并添加以下实现
public ArrayList<Part> getParttList() {
if(iParttList == null)
iParttList = new ArrayList<Part>();
return iParttList;
}
public Part getPart() {
if(iPart == null)
iPart = new Part();
return iPart;
}
最佳做法是什么?
解决方案
第二个实现防止返回 null,对吧?因此,如果这个对象有可能返回 null (因为有哪些构造函数允许这个,否则它可能会通过)并且对于您的预期用例来说这将是一件坏事,然后使用第二个实现。
推荐阅读
- node.js - 使用socket io实时获取数据不起作用
- vb.net - Vb.net将文本框与时间和组合框值相乘
- post - 使用 checkFormRedirect 方法在 ATG 中发送 POST 请求
- javascript - Mocha 伪造第二种方法调用
- c# - 将数据从视图传递到控制器 - 使用模型
- python - 使用 iterrows 循环时出错
- saml - SAML 规范:在没有用户的情况下返回 SP
- laravel - Laravel 有没有办法将输出发送到控制台和日志?
- jenkins - 工作流程步骤中未指定的 Jenkinsfile 空指针错误
- excel - Power View 中筛选的组的平均百分比