1.项目描述:项目描述 这是一个基于C/S结构的银行账户在线管理系统,用户可以通过ATM终端界面来操作自己的银行账户.
2.模块JAVAEE.
3.项目详细内容介绍
要求1:封装一个Account类 - 业务数据
写一个账户类(Account),属性并且完全封装(注意:要辨别每个属性的set/get方法是否需要公开):
id:账户号码 长整数(Long)
password:账户密码 字符串类型(String)
name:真实姓名 字符串类型(String)
personId:身份证号码 字符串类型(String)
email:客户的电子邮箱 字符串类型(String)
balance:账户余额 双精度(double)
方法:
deposit: 存款方法,参数类型:double, 返回类型:Account
withdraw:取款方法,参数类型:double, 返回类型:Account
构造方法:
有参和无参,有参构造方法用于设置必要的属性.
要求1:完成以下两种账户类型的编码。
银行的客户分为两大类:储蓄账户(SavingAccount)和信用账户(CreditAccount),两种的账户类型的区别在于:
储蓄账户不允许透支,而信用账户可以透支,并在用户在满足银行条件的情况下允许用户调整自己的透支额度.
注意:
1、CreditAccount需要多一个属性 ceiling 透支额度;
2、CreditAccount需要覆盖(重写)Account中的取款方式withdraw()。
要求2:完成Bank类的编码。
属性:
1.当前所有的账户对象的信息,存放在数组中: Account[].
2.当前账户数量index.
方法:
用户开户(register)
参数列表: Long 账号, String密码, String确认密码,String 姓名,String身份证号码,String邮箱,int 账户类型;
(Long id, String password, String repassword, String name, String personID, String email, int type)
返回类型:Account
项目需求规定账户类型:0 – 储蓄账户 1 – 信用账户 2 – 可贷款储蓄账户 3– 可贷款信用账户
用户登录(login)
参数列表: Long 账号, String密码;
(Long id, String password)
返回类型:Account
用户存款(deposit)
参数列表: Long 账号, double存款金额;
(Long id, double money)
返回类型:Account
用户取款(withdraw)
参数列表: Long 账号,String 密码,double取款金额;
(Long id, String password, double money)
返回类型:Account
设置透支额度(updateCeiling)
参数列表: Long 账号, String 密码,double透支额度金额;
(Long id, String password, double money)
返回类型:Account
提示:这个方法需要验证账户是否是信用账户
转账功能(transfer)
参数:from转出账户,passwordFrom 转出账号的密码,to转入账户,money转账的金额
(Long from, String passwordFrom, Long to, double money)
返回值:boolean
要求3:另外,请为Bank类添加几个统计方法
1.统计银行所有账户余额总数
2.统计所有信用账户透支额度总数
要求4:编写测试类
写个测试类,测试以上代码能否正常工作。
要求5:覆盖toString方法
查看对象的内容。