注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号
x
这里主要想分享ATM这道题, 其余和面经都一样
题目是: 给定五个interface(除了display以外, 其余皆为***空的***)
- Display
- string readInput(string displayText)
- void showError(string errMsg)
- void showMessage(string msg)
- AccountStore
- CardHandler
- CashDispenser
- CashInTake
请设计每个interface需要的methods来implement一个ATM以下的功能:
1. createAccount
2. login
3. withdraw
4. deposit
5. checkBalance
6. logout
...etc
Example
1. createAccount
void createAccount() {
string name = _display.readInput("Enter your name");
string address = _display.readInput("Equot;Not enough balance");
return;
}
// 发钞
_cardDispenser.dispense(amount);
}
这里就随意写写, 有错误就别经结了
这里只考虑一台ATM, 你也能和面试官讨论如果有多个ATM的时候, 这些method要怎么设计比较好
下午面了四个managers还是跪了, 不知道标准为何
补充内容 (2018-11-6 18:27):
比较像是设计另外4个interface的API
|