【发布时间】:2012-11-08 19:34:22
【问题描述】:
我有一些类,只有在传递的参数为真时才想初始化它们。 事实证明,这个方法的每个实现都是相同的,只是用于不同的类。
public static NamedScene getScene(boolean init) {
if (mainMenu == null) {
mainMenu = new MainMenu();
}
if (init) mainMenu.init();
return mainMenu;
}
我想抽象这个方法,所以我不必通过调用MainMenu.init(true); 手动访问它,而是使用场景扩展抽象类的scene.init(true);。
每个类都有一些默认属性,例如通过抽象方法 getName() 访问的名称。我希望该方法有时在没有 init() 的情况下返回类实例,有时在使用 init() 时返回。
【问题讨论】:
-
好的,这里的问题是什么?
-
什么是
scene?它是从哪里来的?请发布一个简短但完整的程序,展示您想要做什么。 -
scene 扩展了抽象类。我的意思是我不想指定类本身,而只是通过抽象来访问它。
标签: java abstract-class javafx-2 abstract abstraction