C# 语言 第一部分 面向对象(十二) 接口的应用

本文介绍了一个简化的银行业务流程,包括账户、数据库、银行柜台、ATM机等类的设计及其实现取款、存款和转账功能的方法。展示了如何通过接口实现不同业务场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本章为接口课程的综合练习。

本次练习展示了一个简化的银行业务流程,体现了银行和用户数个角色的关系。看下图:

 

账户类(Account)对象存储在数据库类(Database)对象中;计算机(Computer)类对象连接到数据库类对象上;银行柜台(BankCounter)类对象拥有一台计算机对象作为私有成员,利用该对象对数据库进行操作;ATM机(ATM)类继承自计算机类,其对象可以对数据库对象进行操作;银行柜台类对象可创建银行用户类(BankUser)对象,用户类对象可以进行取款、存款和转账操作。

GetMoneyable接口表示对象具备取款能力;
SaveMoneyable接口表示对象具备存款能力;
Transferable接口表示对象具备转账能力。

用户类对象取款操作目标为任意符合GetMoneyable接口的类对象;存款操作目标为任意符合SaveMoneyable接口的类对象;转账操作目标为任意符合Transferable接口的类对象。

银行柜台类实现了所有三个接口;ATM对象实现了GetMoneyable接口和Transferable接口,即ATM机可以取款和转账,不能存款。

看代码:

 

如果已经理解上述代码,那么完成如下任务:
1。可以在上述代码的基础上完成POS机代码,POS机时ATM机的扩展,可以警醒存款。
2。增加更改密码的接口ChangePasswordable,并在柜台,ATM机和POS机上实现该接口

 

本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/mousebaby808/archive/2010/03/19/5394773.aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值