我对Java很陌生,需要一些帮助。
问题是我有一个主类,它有一个null变量对象(在开始时需要为null)和一个菜单,其中有不同的选项来改变这个变量的状态。
每个选项都由不同的类控制,这些类会更改此变量的状态。
我如何从#1选项类初始化这个变量,并通过选项维护这个变量的状态,而不声明这个变量是静态的?
执行菜单选项#2需要初始化变量。
菜单不在同一个“主”类上,因为我试图使用继承和多态性使其可重用。
Class Problem { //main class
private Control control;
}
Class Option1{
//initialize the variable control = new Control();
}
字符串
多谢了!
2条答案
按热度按时间ffx8fchx1#
菜单不是在同一个“主”类上,因为我正在尝试使用继承和polimorfism使其可重用。
请记住,继承不是“重用代码”的好方法。继承必须符合 is a 关系。代码的重用可以通过 composition 更好地实现。
lbsnaicq2#
我能给予的最好的建议是让它成为其他类(除了初始化为null的类以外的所有类)中构造函数的一部分,并在每次使用“菜单”时传递它