Java中getter和setter是什么?

时间:2019-04-29 03:17:17  来源:igfitidea点击:

在Java中,getter和setter是两种用于获取和更改变量值的传统方法。

public class SimpleGetterAndSetter {
    private int number;
 
    public int getNumber() {
        return this.number;
    }
 
    public void setNumber(int num) {
        this.number = num;
    }
}

该类声明一个私有变量number。由于number是私有的,因此来自该类外部的代码无法直接访问该变量,比如:

SimpleGetterAndSetter obj = new SimpleGetterAndSetter();
obj.number = 233;    // 编译错误,不能在外部修改私有变量
int num = obj.number; // 编译错误,不能在外部读取私有变量

外部代码必须调用getter 即getNumber() 和setter即setNumber()来读取或更新变量,例如:

SimpleGetterAndSetter obj = new SimpleGetterAndSetter();
 
obj.setNumber(233); 
int num = obj.getNumber();

setter是更改变量值的方法。getter是一种读取变量值的方法。
getter和setter在Java中也称为accessor和mutator。