题目:编写Java Application,实现BankAccount类的定义。 要求:(1)BankAccount类拥有属性: 姓名(name, String) 存款额(balance, double) 存期(year, int) (2)BankAccount类的构造方法有2个: 一个构造方法不含形参,设置默认的存款额为10元,存期为一年。 另一个构造方法包含2个用于创建对象时设置存款额与存期的形参。 (3)BankAccount类的方法有2个: 存款(save)方法,返回值为空 取款(fetch),返回值为空 -------------------------------------------------------*/ /**********Program**********/ /********** End **********/ public class Prog1{ public static void main(String args[]){ BankAccount ba1=new BankAccount(); ba1.save(1000); ba1.fetch(600); System.out.println("姓名:王晓明"); System.out.println("存款额:"+ba1.balance); } }
时间: 2025-06-15 14:40:38 浏览: 12
以下是根据题目要求编写的 `BankAccount` 类以及完整的 Java Application:
```java
// BankAccount类定义
class BankAccount {
// 属性:姓名、存款额、存期
private String name;
private double balance;
private int year;
// 无参构造方法,设置默认的存款额为10元,存期为一年
public BankAccount() {
this.balance = 10.0;
this.year = 1;
this.name = "未知"; // 默认姓名
}
// 含参构造方法,用于设置存款额与存期
public BankAccount(double balance, int year) {
this.balance = balance;
this.year = year;
this.name = "未知"; // 默认姓名
}
// 存款方法
public void save(double amount) {
if (amount > 0) {
balance += amount; // 增加存款额
System.out.println("成功存入:" + amount + "元");
} else {
System.out.println("存款金额必须大于0!");
}
}
// 取款方法
public void fetch(double amount) {
if (amount > 0 && amount <= balance) {
balance -= amount; // 减少存款额
System.out.println("成功取出:" + amount + "元");
} else {
System.out.println("取款失败!金额不足或输入无效!");
}
}
// 提供getter方法以访问balance属性(如果需要)
public double getBalance() {
return balance;
}
// 设置姓名的方法
public void setName(String name) {
this.name = name;
}
}
public class Prog1 {
public static void main(String[] args) {
// 创建BankAccount对象并调用save和fetch方法
BankAccount ba1 = new BankAccount();
ba1.setName("王晓明"); // 设置姓名
ba1.save(1000); // 存款1000元
ba1.fetch(600); // 取款600元
// 输出姓名和存款额
System.out.println("姓名:" + ba1.getName());
System.out.println("存款额:" + ba1.getBalance());
}
}
```
---
### 回答问题-给出解释
1. **类的定义**
在 Java 中,类是对象的模板。`BankAccount` 类被定义为拥有三个属性:`name`(字符串类型)、`balance`(双精度浮点型)和 `year`(整型)。这些属性被声明为 `private`,以遵循封装的原则,确保外部无法直接访问或修改它们。
2. **构造方法**
- 无参构造方法:设置默认的存款额为 10 元,存期为一年。
- 含参构造方法:允许在创建对象时自定义存款额和存期。
3. **方法实现**
- `save()` 方法用于增加存款额,同时检查输入金额是否有效(大于 0)。
- `fetch()` 方法用于减少存款额,同时检查输入金额是否有效(大于 0 且不超过当前余额)。
4. **主程序**
在 `Prog1` 类的 `main` 方法中,我们创建了一个 `BankAccount` 对象,并调用了其 `save()` 和 `fetch()` 方法来模拟存款和取款操作,然后输出最终的存款额。
---
###
阅读全文
相关推荐


















