Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 银行类面向对象接口决策_Java_Oop_Interface - Fatal编程技术网

Java 银行类面向对象接口决策

Java 银行类面向对象接口决策,java,oop,interface,Java,Oop,Interface,我正在编写一个简单的Bank类,其中包含Accounts。我希望Persons能够打开一个新的受密码保护的银行帐户,并从他们的帐户中提取和存款。账户存放在银行内。银行和账户类应提供哪些服务 假设p在b银行已经有一个账户,他想存100美元。他的密码是“猴子”。选择: b.accessAccount(p, "monkey").deposit(100); 其中accessAccount()验证密码,然后返回p的帐户 或 哪个选择更合理?第一个选择是正确的,一个方法应该做一件事,除此之外,第一个方法比

我正在编写一个简单的
Bank
类,其中包含
Account
s。我希望
Person
s能够打开一个新的受密码保护的银行帐户,并从他们的帐户中提取和存款。账户存放在银行内。银行和账户类应提供哪些服务

假设p在b银行已经有一个账户,他想存100美元。他的密码是“猴子”。选择:

b.accessAccount(p, "monkey").deposit(100);
其中accessAccount()验证密码,然后返回p的帐户


哪个选择更合理?

第一个选择是正确的,一个方法应该做一件事,除此之外,第一个方法比第二个方法更容易理解。

继续这一点,第一个方法似乎正在创建一个经过身份验证的会话对象,然后允许执行操作。这很好。将裸帐户对象返回给用户时是否存在安全问题?
b.deposit(p, "monkey", 100);