任务一:创建一个简单的银行程序包
目的:Java语言中面向对象的封装及构造器的创建与使用
说明:创建Account类,将源文件放入banking程序包中。在创建单个账户的默认程序包中,已经编写了测试程序TestBanking,这个测试程序初始化账户余额,并可执行简单的事物处理。最后,能显示该账户的最终余额。
提示
-
创建banking包
-
在banking包下创建
Account
类a.声明私有属性:
balance
(当前账户余额)b.声明一个带参数(
init_balance
)的公有构造器,这个参数为balance属性赋值c.声明公有方法:
getBablance
(获取余额)deposit
(向余额增加金额)withdraw
(向余额减去金额)) -
编写TestBanking.java文件
任务二:扩展(添加Customer类,此类中包含对象Account)
目的:使用引用类型的成员变量
提示:
-
在banking包下创建
Customer
类a.声明私有对象属性:
firstName,lastName,account
(分别表示名与性)
b.声明一个带两个参数(代表对象属性的参数f和l)的公有构造器
c.声明方法getFirstName(获取属性),getLastName(获取属性),setAccount(给account属性赋值),getAccount(获取account属性))
-
编写TestBanking.java文件
任务三:修改withdraw方法返回布尔值,表达交易是否成功。
目的:有返回值的方法
提示:修改Account
类
- 修改
withdraw
方法,取款金额大于余额,返回false;反之返回true - 存款成功返回true
任务四:用数组实现银行与客户间的多重关系
目的:在类中使用数组作为模拟集合操作
提示:添加银行类Bank类,Bank对象跟踪自身与其客户的关系。用Customer对象的数组实现这个集合化的关系。还要保持一个整数属性来跟踪银行当前有多少客户
- a.创建
Bank
类 - b.为
Bank
类增加属性customers
(Customer对象的数组)和numberOfCustomers
(整数,跟踪下一个customers数组索引) - c.添加公有构造器,以合适的最大尺寸初始化customer数组
- d.添加
addCustomer
方法(参照参数(姓,名)构造新的Customer对象,把它放入customer
数组中,并且numberOfCustomers+1
) - e.添加
getNumberOfCustomers
方法(获取属性的值)getCustomers
方法(返回index
相关客户))
任务五:在项目中创建Account的两个子类:SavingAccount和CheckingAccount
目的:继承,多态,方法的重写
提示:
- 修改
Account
类的属性balance
为protected
- 创建
SavingAccount
类,继承Account
类 SavingAccount
类有double
类型的interestRate
属性SavingAccount
类有带两个参数(balance
和interest_rate
)的公有构造器。该构造器必须调用super(balance)
将balance
参数传递给父类构造器CheckingAccount
类必须扩展Account
类CheckingAccount
类有double
类型的overdraftProtection
属性CheckingAccount
类有带一个参数(balance
)的公有构造器。该构造器必须调用super(balance)
将balance
参数传递给父类构造器CheckingAccount
类有带两个参数(balance
和protect
)的公有构造器。该构造器必须调用super(balance)
并设置overdraftProtection
属性,将balance参数传递给父类构造器CheckingAccount
类必须覆盖withdraw
方法(余额充足,正常进行取款;余额不充足,就用overdraftProtection
值来弥补该差值)
任务六:创建客户账户
目的:instanceof
运算符的使用
提示:
- 修改
Customer
类来处理具有多种类型的联合账户(如用数组表示多重性,该类必须包括以下公有方法:addAccount(Account),getAccount(int),getNumOfAccounts().
每个Customer
可以有多个Account
.(声明至少5个)) - 测试:该程序创建一个客户和账户的集合,并生成这些客户及其账户余额的报告。
- 使用
instanceof
运算符测试拥有的账户类型,并且将account_type
设置为适当值,如CheckingAccount
或SavingAccount
。
相关参考答案在相关资源里
感谢大家的支持,关注,评论,点赞!