Java中为什么要使用getter和setter?


通过使用getter和setter,程序员可以控制重要变量的变更,

例如只能在指定的范围内更改某个变量的值。

比如:

1
2
3
4
5
6
public void setNumber(int num) {
if (num < 10 || num > 100) {
throw new IllegalArgumentException();
}
this.number = num;
}

这就保证了number的值始终设置在10到100之间。如果变量 number可以直接更新,那么调用者可以为其设置任意值,特别是设置了不符合要求的值。

比如,如果他设置成300,就不符合10到100之间的要求。

1
obj.number = 300;

当一个变量被私有修饰符隐藏并且只能通过getter和setter访问时,它被封装。封装是面向对象编程(OOP)的基本原则之一,实现getter和setter是实现程序代码封装的方法之一。


原文链接:https://codingdict.com/