Java 方法正在将变量重新初始化为0

Java 方法正在将变量重新初始化为0,java,Java,我目前有一个accounts类,它有一个存款方法。 每当我调用此方法时,它都会将totalamount重新初始化为零,然后将添加的金额相加,因此总金额始终设置为添加的金额 帐户类别: public class Accounts { double totalAmount; public Accounts(){ totalAmount = this.totalAmount; } public double Deposit(double amountAdded) { totalAm

我目前有一个accounts类,它有一个存款方法。 每当我调用此方法时,它都会将totalamount重新初始化为零,然后将添加的金额相加,因此总金额始终设置为添加的金额

帐户类别:

public class Accounts {

double totalAmount;
public Accounts(){
    totalAmount = this.totalAmount;
}
 public double Deposit(double amountAdded) {
    totalAmount+=amountAdded;
    return totalAmount;
} 
在main中调用该方法:

System.out.println("Please enter the customer's account number you want to deposit money for");
int accountNumber = input.nextInt();
while(accountNumber == 0 || accountNumber < 0){
    System.out.println("Please enter an account number greater than 0");
 accountNumber = input.nextInt();
}
try{
for(int i = 0; i < index +1 ; i++){
    if(cust[i].accountNumber1 == accountNumber){
        System.out.println("Please enter the amount you want to deposit");
        double amount = input.nextDouble();
        acc[i] = new Accounts();
        double a = acc[i].Deposit(amount);
        System.out.println(a);
        break;
    }
}

假设x个人当前的总数是100。调用方法Deposit with additional 300时,该方法将返回100,而不是预期的400。

您将创建一个新帐户,而不是使用数组中的帐户

acc[i] = new Accounts();

这将覆盖阵列中的帐户,新创建的帐户余额为0。

删除它将无法解决我的问题,因为如果不初始化acc对象,我将无法调用存款方法。这是您现在创建帐户实例的唯一方法吗?您可能应该与您的客户一起初始化它们。客户并不真正需要帐户,因此创建帐户将在稍后阶段进行。但是,客户之前没有余额,一切正常,不是吗?没有账户的客户怎么可能有以前的余额?明白了!让我试试看。