7.4.2 设置器和访问器
在上面的程序段中,出现过“set”和“get”函数,那么这些函数起着什么作用?在Java语言中把“set”函数称为设置器,把“get”函数称为访问器。
访问器只查看对象的状态或者返回对象的属性值。访问器有以下特点:
方法声明部分有返回值类型。
方法声明没有参数。
方法体内有返回语句。
设置器主要是完成某个对象属性值的赋值功能。设置器有以下特点:
方法返回类型为void,即不返回类型。
方法声明中至少有一个参数。
方法体内肯定有赋值语句。
把上例中的设置器和访问器单独拿出来看看是否是具有这些特点。
01 void set(String name, String code, String sexy, String duty)
02 {
03 this.name=name;
04 this.code=code;
05 this.sexy=sexy;
06 this.duty=duty;
07 }
08 public String getname()
09 {
10 return name;
11 12
}
13 public String getcode()
14 {return code;
15 }
16 public String getsexy()
17 {return sexy;
18 }
19 public String getduty()
20 {return duty;}
21 public void setachi(double achievement)
22 {
23 this.achievement=achievement;
24 }
25 public double getachi()
26 {
27 return achievement;
28 }
【代码说明】先观察这些“set”函数:“set”、“setachi”函数。“void set(String name, String code, String sexy, String duty)”带了4个参数,无返回值,存在4个赋值语句。“public void setachi(double achievement)”带了一个参数,无返回值,且存在一个赋值语句。
再来观察“get”函数:“getname”、“getcode”、“getduty”、“getsexy”、“getachi”。这5个访问器都是有返回值,不带任何参数,且方法体内有一个返回语句。
如果要实现一个对属性的访问和设置,一般应该有以下几项内容:
一个私有的字段变量。
一个公开的字段访问器。
一个公开的字段设置器。