(OJ)Java面向对象-银行账户-面向对象综合实验

银行账户-面向对象综合实验

Problem Description

1.实验目的
(1) 熟悉类的定义;
(2) 掌握对象的声明、实例化及成员的引用;
(3) 掌握构造方法及实例方法的区别与用法。

2.实验内容
  多数用户对去银行办理存款、取款等业务并不默生,用户自然感觉到了通过计算机办理业务的方便、快捷,也自然对编写出银行系统程序的程序员发出由衷的敬意。实际上,当我们具备了面向对象编程的知识以后,我们也能编写出相应的程序。
  设计一个银行帐户类,成员变量包括账号、储户姓名、开户时间、身份证、存款余额等帐户信息,成员方法包括存款、取款操作。

3.实验要求
 将下列代码补充完整


import java.util.*;      //引入程序包

public class Main{
    public static void main(String args[])
    {
          //实现账户的相关操作
           BCOption bco = new BCOption();
           bco.kaihu(new BankCount(1,"张三","2020-04-30",12));
           bco.query(0);
     }  
}

  // 你的代码

Output Description

1 zhangsan 2020-04-30 12.0

解题代码

// BankCount类 银行账户类
class BankCount{
    
    
    // id 编号
    private int id;
	// name 姓名
    private String name;
	// time 开户时间
    private String time;
	// no 身份证号
    private String no;
	// 余额 这里使用double在进行计算的时候可能出现精度丢失导致出现问题 
    // 应该使用专业的BigDecimal类
    private double balance;
	// 无参构造
    public BankCount() {
    
    
    }
	// 带参构造 全部成员
    public BankCount(int id, String name, String time, String no, double balance) {
    
    
        this.id = id;
        this.name = name;
        this.time = time;
        this.no = no;
        this.balance = balance;
    }
	// 带参构造 部分成员
    public BankCount(int id, String name, String time, double balance) {
    
    
        this.id = id;
        this.name = name;
        this.time = time;
        this.balance = balance;
    }
	
    // 重写ToString方法
    @Override
    public String toString() {
    
    
        return id + " " + name + " " + time + " " + balance;
    }
}

// BCOption类 账户操作类
class BCOption{
    
    
    // counts 存储账户信息 这里也是有问题的 不过只要能过OJ 这都无所谓了
    private ArrayList<BankCount> counts = new ArrayList<>();
	
    // 开户方法
    public void kaihu(BankCount bankCount){
    
    
        counts.add(bankCount);
    }

    // 查询账户方法
    public void query(int index){
    
    
        System.out.println(counts.get(index));
    }
}

猜你喜欢

转载自blog.csdn.net/qq_40856560/article/details/112564208