抽象類應用——模板方法模式

模板方法模式(Templete Method):定義一個操做中的算法的骨架,而將一些可變部分的實現延遲到子類中。模板方法模式使得子類能夠不改變一個算法的結構便可從新定義該算法的某些特定的步驟。java

package com.main;

import java.util.Random;

public class TempleteMethod {

	public static void main(String[] args) {
		Girl g = new Girl();
		g.play();
	}

}

// 具體的執行者
class Girl extends Games {

	@Override
	public boolean result() {
		Random r = new Random();
		return r.nextBoolean();
	}

}

// 遊戲模板設計
abstract class Games {
	// 骨架
	public void play() {
		System.out.println("遊戲開始");
		System.out.println("結果:");
		if (result()) {
			System.out.println("YOU WIN!");
		} else {
			System.out.println("YOU LOSE!");
		}
	}

	// 可變的部分,在這裏只定義,留着在子類中再去實現
	public abstract boolean result();
}
相關文章
相關標籤/搜索