3

我正在尝试创建一个银行帐户应用程序来跟踪 C# 课程的存款和取款。

我遇到的问题是,帐户余额似乎正在重置(或其他)。

当您输入一个数字并单击按钮时,它(据说)被添加到余额并显示在文本框中。不幸的是,当您输入数字时,数字本身会显示在文本框中。我不知道为什么。

我的代码如下:

namespace Assign11
{
using System;

public class BankAccount
{
    private double inValue;
    private double accountBalance;

    public BankAccount()
    {
    }

    public BankAccount(double input)
    {
        inValue = input;
        Deposit();
    }

    public double Invalue
    {
        set
        {
            inValue = value;
        }
        get
        {
            return inValue;
        }
    }

    public double AccountBalance
    {
        get
        {
            return accountBalance;
        }
        set
        {
            accountBalance = value;
        }
    }

    public void Deposit()
    {
        accountBalance = accountBalance + inValue;
    }
  }
}

我也有以下表格:

namespace Assign11
{
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void btn_deposit_Click(object sender, EventArgs e)
    {            
        double input;
        input = double.Parse((putin.Text));

        BankAccount anAccount = new BankAccount(input);

        output.Text = anAccount.AccountBalance.ToString();        
    }
  }
}
4

1 回答 1

5

那是因为BankAccount每次单击按钮时都会实例化一个对象。这就是为什么 AccountBalance 总是从零开始而不是累加的原因。

在类范围内声明您的BankAccount对象,以便保持平衡。更改Deposit函数以接受存款金额并将该值添加到帐户余额中

于 2013-03-08T03:04:56.130 回答