Browse Source

上传文件至 'w3'

main
wangbo 3 weeks ago
parent
commit
8cf2931eee
  1. 11
      w3/BankAccountTest.java
  2. 46
      w3/bankaccount.java

11
w3/BankAccountTest.java

@ -0,0 +1,11 @@
public class BankAccountTest {
public static void main(String[] args) {
BankAccount account = new BankAccount("6222021234567890123", "张三");
account.deposit(1000);
account.withdraw(300);
System.out.println("户主姓名:" + account.getOwnerName());
System.out.println("当前余额:" + account.getBalance());
account.setOwnerName("李四");
System.out.println("修改后户主姓名:" + account.getOwnerName());
}
}

46
w3/bankaccount.java

@ -0,0 +1,46 @@
public class BankAccount {
// 1. 私有属性(封装核心)
private final String accountNumber; // 账号不可修改,用 final 修饰
private String ownerName; // 户主姓名可修改
private double balance; // 余额只能通过存取款修改
// 2. 构造方法:创建账户时必须提供账号和户主姓名,初始余额为0
public BankAccount(String accountNumber, String ownerName) {
this.accountNumber = accountNumber;
this.ownerName = ownerName;
this.balance = 0.0; // 初始余额固定为0
}
// 3. 存款操作:金额必须大于0
public void deposit(double amount) {
if (amount > 0) {
this.balance += amount;
System.out.println("存款成功!当前余额:" + this.balance + " 元");
} else {
System.out.println("存款失败!存款金额必须大于0。");
}
}
// 4. 取款操作:金额必须大于0且不超过当前余额
public void withdraw(double amount) {
if (amount <= 0) {
System.out.println("取款失败!取款金额必须大于0。");
} else if (amount > this.balance) {
System.out.println("取款失败!取款金额超过当前余额。");
} else {
this.balance -= amount;
System.out.println("取款成功!当前余额:" + this.balance + " 元");
}
}
// 5. 查询余额方法(对外提供只读访问)
public double getBalance() {
return this.balance;
}
// 6. 户主姓名的修改方法(可写)
public void setOwnerName(String ownerName) {
this.ownerName = ownerName;
}
//
Loading…
Cancel
Save