在我实习的时候,我的一位同事给了我一个提示。我想知道这是否是一种好习惯。
我所做的是创建仅用于它们包含的值的类,并且没有任何实际执行某些操作的函数(除了具有 getter、setter 和构造函数)。我这样声明我的变量:
public class ObjectIUse{
Private String name;
public ObjectIUse(String name){
this.name = name;
}
public String getName(){
return name;
}
}
所以我没有使用 setter,因为它应该始终保持不变。我的同事说我也可以这样做:
public class ObjectIUse{
public final String name;
public ObjectIUse(String name){
this.name = name;
}
}
因为现在我们不需要任何 getter 或 setter,因为它是公共的,但是它也永远不能更改,因为它是 final 的。
哪个会更好?还是将其设为私有但也是最终的可能会更好?我的意思是所有选项都有效,显然。我只想知道哪个更好以及为什么。