大家好,我是OOD和Java的新手,因此不确定如何正确执行此操作。
当前,我需要创建一个应用程序(基于控制台/命令提示符),该应用程序需要经历一系列所谓的“菜单”,其中该应用程序将显示您的选择,然后输入1/2/3/4等。我的教授告诉我中断我的边界类(所有选择项都在其中的类),因为它太长了(400多行)。
现在出现了问题。如果要分解它,则必须继续创建新的对象类,以在不同类中的不同菜单上进行调用。例如:
假设我有MainMenu,FoodMenu,DrinkMenu。因此,我的main方法将创建一个MainMenu对象来调用displayMenu()。从那里开始,如果要导航到食物菜单,则必须创建另一个FoodMenu对象,然后在其下再次调用displayMenu()。沿着代码进一步,如果我想导航回到主菜单,则必须再次创建MainMenu对象并调用displayMenu。
上面的方法将有那么多变量要等待被垃圾回收,并且会浪费内存。是否有其他解决方案?提前非常感谢您。
哈林
最佳答案
如果您尚未执行所有菜单,请扩展abstract class(确定)或实现interface(更好)。
至于如何进入菜单,您可以只将每种类型的菜单之一存储在菜单数组或其他集合中(例如,如果要使用字符串或其他形式查找它们,则为Map
目的)。使该集合可全局访问(某些static
类中的public
),然后每次需要时都可以显示菜单的相同实例。
关于java - 如何在Java中显示多个“菜单”类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5333629/