设计模式—模板模式
介绍
代码
游戏模板类
定义一个游戏模板虚类 Game
,抽象并规范好游戏的进行流程
public abstract class Game {
abstract void init();
abstract void startPlay();
abstract void endPlay();
// 模板
public final void play(){
// 初始化
init();
// 开始
startPlay();
// 结束
endPlay();
}
}
实体类
建立实体类 Cricket
public class Cricket extends Game{
@Override
void init() {
System.out.println("Cricket init");
}
@Override
void startPlay() {
System.out.println("Cricket start");
}
@Override
void endPlay() {
System.out.println("Cricket end");
}
}
建立实体类 Football
public class Football extends Game{
@Override
void init() {
System.out.println("Football init");
}
@Override
void startPlay() {
System.out.println("Football start");
}
@Override
void endPlay() {
System.out.println("Football end");
}
}
测试
public class TemplateTest {
@Test
void test(){
Game game = new Cricket();
game.play();
System.out.println("------------------");
game = new Football();
game.play();
}
}