考虑一个名为rotate的潜在实例方法,它通过交换宽度和高度值将Rectangle对象旋转90度。例如,如果Rectangle的尺寸为10 x 30,则调用rotate方法会将其尺寸更改为30 x 10.
我认为这将是一种存取方法,对吧?既然我们实际上没有改变价值观?
答案 0 :(得分:1)
访问者方法
访问器方法用于返回私有字段的值。
Mutator Methods
mutator方法用于设置私有字段的值。
因此,您正在更改私有字段的状态,因此它是一个mutator。
答案 1 :(得分:0)
参见this关于访问者方法含义的讨论。一般意见是他们不修改状态。如果你旋转对象,你正在修改它的状态,rotate
正在改变对象。
答案 2 :(得分:0)
任何改变对象状态的方法都是正确的mutator。当你改变尺寸(通过交换)时,它是一个突变。根据您的类定义,这些将是访问器方法,
public int getX() { return x; }
public int getY() { return y; }
public int getWidth() { return width; }
public int getHeight() { return height; }