gpt4 book ai didi

java - 更新实例变量值并确保私有(private)方法使用它们 - Java

转载 作者:行者123 更新时间:2023-12-01 12:45:13 26 4
gpt4 key购买 nike

我构建了一个类,它将根据私有(private)实例变量计算方程。

这些变量可以使用 getter 和 setter 方法进行更新,后者是从项目内的单独控制类调用和更改的(如果相关的话,我正在使用 Eclipse)

我需要确保构造函数在从单独的控制类传递到计算变量 c 中的 setter 方法时使用更新的值。

这是我的代码片段。

实例变量

    private double a;
private double b;
private double c;

构造函数

public Prob(){
a = 4; //must be first initialized with these values then later changed from the control class
b = 10;
setA(a);
setB(b);
setC();

设置方法

public void setA(double a){
if(isValidA(a))
this.a = a;
else this.a = 100; // 100 is meaningless and allows execution of "invalid" string
}
public void setB(double b){
if(isValidB(b))
this.b = b;
else this.b = -1; // -1 is meaningless, allows execution "invalid entry" code in string
}

private void setC(){
if(a<=5 && b>=2)
c = (int)(5 + 0.5*a - 5*(Math.pow(b, 0.2)) + 0.5*(a)*b;
else c = a;
}

我可以从控制类更新变量 a 或变量 b,但如何根据当前的 a 和 b 更新变量 c?

最佳答案

如果我理解你的问题,那么你可以像这样setAsetB

public void setA(double a) {
this.a = (isValidA(a)) ? a : 100;
setC(); // <-- call setC();
}
public void setB(double b) {
this.b = (isValidB(b)) ? b : -1;
setC(); // <-- call setC();
}

关于java - 更新实例变量值并确保私有(private)方法使用它们 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24771575/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com