我正在研究一个项目。这是一个银行模拟,只是为了练习OOP元数据。 这是我的代码,你能帮我解决一下OOD吗?如何在此项目中使用继承和接口?
public class Main {
public static void main(String[] args) {
User[] User = new User[10];
for(int i = 0; i < 10; i++)
User[i] = new User(i);
System.out.print("User Number:");
Scanner s = new Scanner(System.in);
int UserNo = 0;
if(s.hasNextInt())
UserNo = Integer.parseInt(s.next());
public void withdraw()
public void payIn(){
public void MoneyOrder(){
}
答案 0 :(得分:1)
您可以将所有withdraw()等其他方法放在接口中,并创建这些方法的具体实现。
对于继承,您将用户分类为特权用户或普通用户。您可以进一步根据帐户类型进行分类为当前或保存帐户等。
interface Bank
{
public void withdraw();
public void deposit();
//Other methods
}
class ABC_Bank implements Bank
{
//Implementation of methods defined by Bank Interface ,
User Username; //can also include its Own methods
}
class User
{
String name;
//Other fields and getter setter methods
}
class PrivilegedUSer extends User
{
//Methods specific to privileged User.
}
银行业务模拟是一个大项目,您必须遵循所有OOSE概念,如绘制用例图,类图,这将有助于您识别类之间的关系。 例如用户有帐户。因此,两个类之间存在关联关系。根据您的应用程序,您可以选择多重性(用户可以有多个帐户)。这意味着每个类将包含彼此的对象引用。
答案 1 :(得分:0)
我认为你需要从对象开始思考。所以决定你的对象是什么,例如你有用户,但帐户呢。也许您可以查看一个帐户界面,该界面定义帐户具有的常用类型的方法(支付,提取),然后可以通过具体的帐户类型实现,例如储蓄,当前。
答案 2 :(得分:0)
看来你已经有了一半的OOP想法。在这种情况下,您可能需要创建一个类帐户(或接口和实现它的类)some info here。这个想法是将类建模为它们在世界中出现的对象。(例如:对于继承,我不知道你的家庭作业的要求,但也许其他一些继承你的帐户类(info here)的类,可能是当前和节省,如另一个答案所述