【问题标题】:Using another class in java to input an option.在java中使用另一个类来输入一个选项。
【发布时间】:2015-08-23 07:18:17
【问题描述】:

请帮帮我:
我想创建一个图书馆系统java程序,在主类中,我会让用户输入一个选项。

======= 图书馆系统 =======
1。借一本书
2。还书
3。浏览分类
4。出口
================================
在此处输入您的选择:

然后我将为上面的每个选项创建一个子类。

例如,在我的第 1 个选项的班级中,我有与主班相同的选项。

========= 图书馆系统 ========
1. 输入图书代码
2. 返回主菜单
==================================
在此处输入您的选择:

当用户输入选项 2 时,我希望我的子类回到主类。

在这里对不起新手。谢谢!

【问题讨论】:

  • 为每一个创建一个新类似乎是糟糕的设计。我会为每个人创建一个新方法。这也会使您尝试做的事情变得更容易
  • 您只为代表“相同但不同”对象的事物创建子类。比如Animal and Dog,Library and Medical Library等。所以这里不太适合。
  • @RealSkeptic 我认为 OP 不想扩展主类。他/她只是想创建另一个类。

标签: java methods parameters


【解决方案1】:

假设您的主类称为MainClass,另一个类称为BorrowBook。在BorrowBook 中,创建一个返回int 的方法:

public static int promptUser () {
    //you can print some lines here
    //get the user input
    int input = //however you want to get the input
    return input;
}

现在在您的主类中,检查用户是否使用promptUser 方法输入 2:

int response = BorrowBook.promptUser ();
if (response == 2) {
    //call some method to display the main menu
} else if (response == 1) {
    //call some method in the BorrowBook do whatever when the user enters 1
}

看到了吗?这个想法是你需要为不同的东西创建不同的方法。 displayMainMenu, promptUser, promptBookCode 等等。不要把所有的东西都放在 main 方法中。这会降低可维护性和抽象级别。

【讨论】:

  • 我明白你的意思。这确实有帮助,但是如何切换回主菜单?我需要创建一个主菜单对象吗?
  • 你用另一种方法在你的MainClass@nyelnyelnyel 中显示主菜单
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-21
  • 1970-01-01
  • 1970-01-01
  • 2013-04-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多