制定者和获取者消息

时间:2016-11-29 23:01:05

标签: java

所以我声明了一个名为Divider的类,并且有一个实例变量private int divisor;使用构造函数

public Divider()
{

  divisor = 2;

}

问题是 1)为除数写一个公共getter方法。 2)为divisor编写一个公共setter方法,它将除数设置为参数的值,前提是后者不为0.如果为0,则该方法不执行任何操作。 (这是因为顾名思义,除数将用于除法,因此参数的值不能为零,并且setter只能将其设置为非零值。)

对于我有的getter消息

public int getValue() {
    return divisor;

}

对于我有的setter消息

public void setValue(int number){
   if(number == 0)
   this.divisor = number;

}

当我测试代码时,我向getter发送一条消息并返回值2.但是当我测试setter消息时,它将值设置为0.我不认为这是正确的,因为我不能使用0我认为。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

您需要更改

if(number == 0)

if(number != 0)

如果传递的参数为0,则不会设置divisor

答案 1 :(得分:0)

你需要反转逻辑,你不想要除以零错误

public void setValue(int number){
   if(number != 0){
       this.divisor = number;
   }
}