Java类,试图创建一个查找初始值的方法

Java类,试图创建一个查找初始值的方法,java,Java,我刚开始上课,有点困了。我不确定如何使用此方法来查找第一次输入的初始值 public class DecreasingCounter { private int value; public DecreasingCounter(int valueAtStart) { this.value = valueAtStart; } public void printValue() { // do not touch this!

我刚开始上课,有点困了。我不确定如何使用此方法来查找第一次输入的初始值

public class DecreasingCounter {
    private int value;

    public DecreasingCounter(int valueAtStart) {
        this.value = valueAtStart;
    }

    public void printValue() {
        // do not touch this!
        System.out.println("value: " + this.value);
    }

    public void decrease() {
        if (this.value > 0) {
            this.value--;
        }
    }

    public void reset() {
        this.value = 0;
    }

    public void setInitial() {
        this.value = 
    }
}

这是最后一个方法
setInitial()我正试图开始工作。

您只需要作为成员维护对初始值的引用,以便以后可以引用它

private final int initialValue;
然后像这样修改构造函数

public DecreasingCounter(int valueAtStart) {
    //store the initial value based on the arg passed in
    this.initialValue = valueAtStart; 

    //go ahead and do whatever we do to reset our counter to the 
    //initial value (avoids duplicating code)
    this.setInitial(); 
}
最后呢,

public void setInitial() {
    //reset our current value back to the initial value we stored at construction time
    this.value = this.initialValue;
}

您只需要作为成员维护对初始值的引用,以便以后可以引用它

private final int initialValue;
然后像这样修改构造函数

public DecreasingCounter(int valueAtStart) {
    //store the initial value based on the arg passed in
    this.initialValue = valueAtStart; 

    //go ahead and do whatever we do to reset our counter to the 
    //initial value (avoids duplicating code)
    this.setInitial(); 
}
最后呢,

public void setInitial() {
    //reset our current value back to the initial value we stored at construction time
    this.value = this.initialValue;
}

将初始值存储到另一个字段中,然后使用该字段重新初始化this.value。将初始值存储到另一个字段中,然后使用该字段重新初始化this.value。嘿,你能解释一下在构造函数中添加行是怎么做的吗?我不知道它是如何工作的。非常感谢,这真的很有帮助,我可以问一下为什么您对initialValue使用“final”吗?@user3261806您的初始值设置了一次,并且不再修改,所以您将其声明为
final
,使其为只读。这还可以防止您在代码中的其他地方意外地将其设置为不同的值。嘿,您能解释一下在构造函数中添加该行是怎么做的吗?我不知道它是如何工作的。非常感谢,这真的很有帮助,我可以问一下为什么您对initialValue使用“final”吗?@user3261806您的初始值设置了一次,并且不再修改,所以您将其声明为
final
,使其为只读。这还可以防止您在代码的其他地方意外地将其设置为不同的值。