我来自php世界.你能解释一下getter和setter是什么,可以给你一些例子吗?
我对使用getter/setter和构造函数感到有点困惑(参见下面的代码示例)
public class ExampleClass {
private int value = 0;
public ExampleClass () {
value = 0;
}
public ExampleClass (int i) {
this.value = i;
}
public int getValue() {
return value;
}
public void setValue(int val) {
this.value = val;
}
public static void main(String[] args) {
ExampleClass example = new ExampleClass (20);
example.setValue(20);
//Both lines above do same thing - why use constructor?
System.out.println(example.getvalue());
}
}
Run Code Online (Sandbox Code Playgroud)
我所学到的只是我们需要getter/setter来保证安全性,以及以后它们也可以用来更改或编辑值.
我的问题是,如果构造函数是初始化点并且始终存在默认构造函数,为什么使用带参数的构造函数来初始化值而不是getters/setter?.不会使用getter和setter提供安全性,并且能够在任何阶段轻松更改值.请为我澄清这一点.