所以我是编程的超级新手。我创建了一个简单的Calc类,尽管它是构造函数,但却获得了2个数字。我创建了一个calcTotal method,将这两个数字加在一起并将它们放在一个名为total的变量中。然后,我创建了一个printTotal方法,该方法不过是System.out.println(total);。

但是,当我在main中创建一个对象并调用printTotal方法时,它始终打印出0。我知道在Calc类中total初始化为0。我不明白如何将计算的总数从calcTotal方法传递给printTotal方法。如果我将System.out.println(total)放在calcTotal方法中,则调用main会得到正确的总数。

破坏我的Calc班

public class Calc{

private int numOne;
private int numTwo;
private int total;

 public Calc(int numOne, int numTwo){
    this.numOne = numOne;
    this.numTwo = numTwo;
 }

   public void calcTotal(){

    total = numOne + numTwo;

 }

  public void printTotal(){

    System.out.println(total);
 }
}


和我的主要

public class HelloWorld{

 public static void main(String []args){

    Calc myCalc = new Calc(3,5);
    myCalc.printTotal();

 }
}


我知道这是一个超级初学者的问题,可能会被否决,但这让我感到沮丧。

感谢您的任何帮助

最佳答案

在调用打印方法之前,您永远不会调用进行计算的方法calcTotal(),因此永远不会计算总和。

但是无论如何,您不应该有两个这样的方法,因为可以通过使calcTotal()返回int值,然后调用代码可以打印它,或对其执行任何操作来轻松地防止此错误。

public int calcTotal() {
    return numOne + numTwo;
}


在主要方面:

Calc myCalc = new Calc(3,5);
System.out.println("total: " + myCalc.calcTotal());

10-08 08:39