从另一个void方法的变量获取方法的值

时间:2017-11-27 20:09:59

标签: java methods void getter

我是初学者,我正在学习如何使用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。

1 个答案:

答案 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;
}