我是初学者,我正在学习如何使用java中的另一个“getter”方法从void方法中检索值。但是,这一次,它继续返回0.0。我不确定我做错了什么。
构造函数类:
private double gallons;
private double t;
public CO2()
{
gallons = 1288.0;
t = 0.0;
}
public void tons()
{
t = gallons * 8.78e-3;
}
public double getT()
{
return t;
}
测试员类:
CO2 gas = new CO2;
System.out.print(gas.getT());
如果我在主方法中使用gas.tons()将void更改为double并“return”而不是“t =”,那么它将起作用,但我需要使用getter方法。我不明白为什么它只返回0.0。
答案 0 :(得分:0)
你的构造函数设置t = 0.0。然后,您只需询问私有变量t的值,而无需操纵该值。在某些时候,你需要调用tons()来计算加仑到t的值。
CO2 gas = new CO2;
gas.tons();
System.out.print(gas.getT());
将返回计算值,或者您可以在构造函数方法中添加对tons()的调用。
public CO2()
{
gallons = 1288.0;
t = 0.0;
tons();
}
public void tons()
{
t = gallons * 8.78e-3;
}
public double getT()
{
return t;
}