Java :Setter Getter and constructor
2022-09-01 12:48:02
我对 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());
}
}
我所学到的只是,我们需要 getter/setter 来确保安全性,并且它们也可用于以后更改或编辑值。
我的问题是,如果构造函数是初始化点,并且默认构造函数始终存在,那么为什么使用带有参数的构造函数来初始化值而不是 getters/setters?不会使用 getter 和 setter 提供安全性,并且能够在任何阶段轻松更改值。请为我澄清这一点。