我编写了一个包含高级模式和初学者模式的程序,以允许用户在实际使用之前获取程序的挂起.高级模式几乎与初学者模式相同,除了一个或两个需要被另一个方法替换的方法,因此我决定为高级模式和初学者模式类创建一个通用的模式类,而不仅仅是应对代码:这里如果我的解释不是很清楚,那就是类结构:
假设General Mode类具有以下代码:
public class GeneralMode {
private int range;
private String id;
public GeneralMode() {
}
public int getRange() {
return range;
}
public String getID() {
return id;
}
public void doStuff() {
}
}
Run Code Online (Sandbox Code Playgroud)
GeneralMode类是程序完成所有工作的地方.现在,我想这样做,以便Advanced Mode类可以从GUI类获取输入并以与GeneralMode类相同的方式使用它.
谢谢你的帮助!
使用抽象方法创建'GeneralMode'类,这是一个抽象方法,必须由具体的'高级'和'初学者'类实现.两种模式共有的功能可以在'GeneralMode'类中实现.
然后,在GUI类中,实例化正确的具体类,并将其放在"GeneralMode"变量中.然后,您可以使用它,而无需知道您的程序是在初学者模式还是在高级模式下运行.
伪代码:
GeneralMode mode = (UseAdvancedMode == true)? new AdvancedMode() : new BeginnerMode();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
543 次 |
最近记录: |