这是一个非常通用的场景,我使用 setter 函数设置变量并仅在本地使用该变量。
class Main {
private String str;
public Main(String value)
setStr(value);
}
private String getStr() {
return str;
}
private void setStr(String str) {
this.str = str;
}
public void display() {
//METHOD1
System.out.println(getStr());
//METHOD2
System.out.println(this.str);
}
}
显示函数中的两个 METHOD1/2 之间应该遵循什么更好的做法,基本上是使用“str”变量的更好方法。
拥有私有(private) getter/setter 函数是否有意义?
- 伊瓦尔
最佳答案
如果 getter 是私有(private)的,并且只是返回一个私有(private)变量,那么就不需要它,恕我直言(即我更喜欢第二种访问它的方法)。
但是,如果 getter 是公共(public)的而不是最终的,因此可以由子类重新定义,那么您必须决定是否想要获取 getter 返回的可能被覆盖的值,或者您想要的值显示方法中的私有(private)字段。
关于Java getter 与 this,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5203625/