设计一个BankAccount类,这个类包括: (1)一个int型的balance变量表示账户余额。 (2)一个无参数构造方法,将账户余额初始化为0。 (3)一个带一个参数的构造方法,将账户余额初始化为输入的参数。 (4)一个int型的accountNumber变量表示开户数量,每创建一个BankAccount对象就自动加1。 (5)一个getBalance()方法:返回账户余额。 (6)一个withdraw()方法:带一个int型的amount参数,从账户余额中提取amount指定的款额。 如果amount<0或者大于当前账户余额,则输出“Invalid Amount”。 (7)一个deposit()方法:带一个int型的amount参数,将amount指定的款额存储到该银行账户上。 如果amount<0,则输出“Invalid Amount”。
时间: 2023-07-15 19:10:36 浏览: 295
下面是一个Java语言实现的BankAccount类,满足以上要求:
```java
public class BankAccount {
private int balance; // 账户余额
private static int accountNumber = 0; // 开户数量
// 无参构造方法,初始化账户余额为0
public BankAccount() {
balance = 0;
accountNumber++;
}
// 带参构造方法,初始化账户余额为输入的参数
public BankAccount(int initialBalance) {
if (initialBalance < 0) {
System.out.println("Invalid Amount");
balance = 0;
} else {
balance = initialBalance;
accountNumber++;
}
}
// 获取账户余额
public int getBalance() {
return balance;
}
// 取款
public void withdraw(int amount) {
if (amount < 0 || amount > balance) {
System.out.println("Invalid Amount");
} else {
balance -= amount;
}
}
// 存款
public void deposit(int amount) {
if (amount < 0) {
System.out.println("Invalid Amount");
} else {
balance += amount;
}
}
// 获取开户数量
public static int getAccountNumber() {
return accountNumber;
}
}
```
可以使用以下代码进行测试:
```java
public class TestBankAccount {
public static void main(String[] args) {
BankAccount account1 = new BankAccount(); // 开户余额为0
System.out.println("Account 1 balance: " + account1.getBalance()); // 输出:Account 1 balance: 0
System.out.println("Account number: " + BankAccount.getAccountNumber()); // 输出:Account number: 1
BankAccount account2 = new BankAccount(1000); // 开户余额为1000
System.out.println("Account 2 balance: " + account2.getBalance()); // 输出:Account 2 balance: 1000
System.out.println("Account number: " + BankAccount.getAccountNumber()); // 输出:Account number: 2
account1.withdraw(500); // 从账户1中取款500
System.out.println("Account 1 balance: " + account1.getBalance()); // 输出:Account 1 balance: 0
account2.deposit(-100); // 向账户2中存款-100,输出:Invalid Amount
System.out.println("Account 2 balance: " + account2.getBalance()); // 输出:Account 2 balance: 1000
account2.deposit(200); // 向账户2中存款200
System.out.println("Account 2 balance: " + account2.getBalance()); // 输出:Account 2 balance: 1200
}
}
```
阅读全文