我目前正在创建一个非常简单的银行账户程序:用户输入账户持有人姓名,账号和期初余额,然后按下"继续"通过存款和取款来使用该帐户的按钮。我写了一个单独的BankAccount
类,其中包含所需的数据成员和方法。我在Continue
按钮点击事件中放置了创建BankAccount对象的代码
BankAccount currentAccount = new BankAccount(acctName, acctNum, beginningBalance);
但是这似乎只使它成为该方法的本地化,并且当我为"记录事务"编写点击事件时,currentAccount
无法识别。 (存款和取款)按钮。
如何以及在何处对BankAccount对象的创建进行编码,以便在"继续"点击按钮并在"记录交易"中识别。按钮点击事件?如果需要澄清,或者您需要查看我的部分或全部代码,请告诉我。
答案 0 :(得分:6)
您需要在Click处理程序之外声明BankAccount对象,以使其保留在范围内。您可以在单击处理程序中实例化它,如果这是您需要做的事情
以下代码尚未经过测试以进行编译。它只是让您了解所需要的内容。根据您使用的是Winforms还是WPF
,确切的实现和方法签名会有所不同BankAccount account = null;
public void Continue_onClickHandler(EventArgs e) {
account = new BankAccount();
}
public void RecordTransaction_onClickHandler(EventArgs e) {
if (account == null) {
throw new Exception("BankAccount has not been instantiated");
}
// do whatever you need to do with account here
}