Java+Swing模拟银行存取款业务
时间: 2023-09-09 20:05:23 浏览: 152
### 回答1:
好的,以下是一个简单的Java+Swing模拟银行存取款业务的示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Bank extends JFrame implements ActionListener {
// 定义组件
JLabel label1, label2, label3;
JTextField text1, text2, text3;
JButton button1, button2;
JPanel panel1, panel2, panel3;
public Bank() {
// 初始化组件
label1 = new JLabel("账户:");
label2 = new JLabel("密码:");
label3 = new JLabel("余额:");
text1 = new JTextField(10);
text2 = new JTextField(10);
text3 = new JTextField(10);
text3.setEditable(false);
button1 = new JButton("存款");
button2 = new JButton("取款");
panel1 = new JPanel();
panel2 = new JPanel();
panel3 = new JPanel();
// 设置布局
panel1.setLayout(new GridLayout(3, 1));
panel2.setLayout(new GridLayout(3, 1));
panel3.setLayout(new FlowLayout());
// 添加组件
panel1.add(label1);
panel1.add(label2);
panel1.add(label3);
panel2.add(text1);
panel2.add(text2);
panel2.add(text3);
panel3.add(button1);
panel3.add(button2);
// 添加事件监听器
button1.addActionListener(this);
button2.addActionListener(this);
// 将面板添加到窗体中
this.add(panel1, BorderLayout.WEST);
this.add(panel2, BorderLayout.CENTER);
this.add(panel3, BorderLayout.SOUTH);
// 设置窗体属性
this.setTitle("银行存取款业务");
this.setSize(300, 150);
this.setLocationRelativeTo(null);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == button1) { // 存款
double balance = Double.parseDouble(text3.getText());
double deposit = Double.parseDouble(text2.getText());
balance += deposit;
text3.setText(String.valueOf(balance));
JOptionPane.showMessageDialog(this, "存款成功!");
} else if (e.getSource() == button2) { // 取款
double balance = Double.parseDouble(text3.getText());
double withdraw = Double.parseDouble(text2.getText());
if (withdraw > balance) {
JOptionPane.showMessageDialog(this, "余额不足!");
} else {
balance -= withdraw;
text3.setText(String.valueOf(balance));
JOptionPane.showMessageDialog(this, "取款成功!");
}
}
}
public static void main(String[] args) {
new Bank();
}
}
```
这个示例代码创建了一个窗体,包含一个账户、密码、余额、存款和取款的输入框和按钮。当用户点击存款按钮时,程序会将输入的金额加到余额中,并弹出一个消息框提示存款成功;当用户点击取款按钮时,程序会检查余额是否足够,如果够就将输入的金额从余额中减掉,并弹出一个消息框提示取款成功。
### 回答2:
Java Swing是一个用于创建桌面应用程序的用户界面(UI)工具包。通过使用Java Swing,我们可以实现一个简单的银行存取款业务模拟程序。
首先,我们需要创建一个银行账户类,该类包含账户号码、账户余额和相关的方法,如存款和取款。使用Java Swing,我们可以创建一个界面,其中包含文本框和按钮,用于输入存取款金额和执行相关操作。
接下来,我们需要创建一个主类,用于处理界面事件和与银行账户类的交互。当用户点击存款按钮时,程序将获取输入的存款金额,并调用账户类中的存款方法来更新账户余额。同样,当用户点击取款按钮时,程序将获取输入的取款金额,并调用账户类中的取款方法来更新账户余额。
在界面上,我们可以显示账户当前的余额,并在每次执行存取款操作后更新余额的显示。
例如,在用户输入存款金额后,程序可以通过以下代码调用账户类的存款方法来更新余额:
```
double depositAmount = Double.parseDouble(depositTextField.getText());
account.deposit(depositAmount);
balanceLabel.setText("账户余额:" + account.getBalance());
```
类似地,在用户输入取款金额后,程序可以通过以下代码调用账户类的取款方法来更新余额:
```
double withdrawAmount = Double.parseDouble(withdrawTextField.getText());
account.withdraw(withdrawAmount);
balanceLabel.setText("账户余额:" + account.getBalance());
```
通过使用Java Swing,我们可以创建一个用户友好的界面来模拟银行存取款业务。用户可以输入存取款金额,并通过点击按钮来执行相关操作,同时实时显示账户余额的更新。这样,用户可以方便地进行模拟的银行业务操作。
### 回答3:
Java Swing是Java提供的一组GUI(图形用户界面)工具包,可以用于开发桌面应用程序。对于模拟银行存取款业务,可以利用Java Swing创建一个银行存取款的界面,并在界面上提供相应的输入框和按钮。
首先,需要设计一个界面,包括一个账号输入框、一个金额输入框、一个存款按钮和一个取款按钮。当用户输入账号和金额后,点击存款按钮,程序会将相应的金额存入账号对应的余额中;当用户点击取款按钮,程序会从账号对应的余额中提取相应的金额。
其次,需要设计一个账户类,包含账号和余额两个属性,并提供相应的存款和取款方法。在存款方法中,会将存款金额与原有余额相加,得到新的余额;在取款方法中,会将取款金额与原有余额相减,得到新的余额。
最后,将界面与账户类进行关联。当用户点击存款按钮时,界面会获取账号和金额,并调用账户类的存款方法将金额存入账号对应的余额中;当用户点击取款按钮时,界面会获取账号和金额,并调用账户类的取款方法从账号对应的余额中提取相应的金额。
通过以上步骤,可以用Java Swing模拟银行存取款业务。用户可以在界面上输入账号和金额,并通过点击按钮的方式进行存款和取款操作。程序会根据用户的输入,更新账号对应的余额,并在界面上显示最新的余额信息。
阅读全文