My模板設計模式
阿新 • • 發佈:2020-08-28
-
第一個設計模式:模板模式
步驟:
-
第一個設計模式:模板模式
講解:
我們現在使用抽象類設計一個模板模式的應用,
例如在小學的時候,我們經常寫作文,通常都是有模板可以套用的。
假如我現在需要定義新司機和老司機類,新司機和老司機都有開車功能,開車的步驟都一樣,只是駕駛時的姿勢有點不同,
新司機:開門,點火,雙手緊握方向盤,剎車,熄火
老司機:開門,點火,右手握方向盤左手抽菸,剎車,熄火
我們可以將固定流程寫到父類中,不同的地方就定義成抽象方法,讓不同的子類去重寫,
程式碼如下:
// 司機開車的模板類
public abstract class Driver {
public void go() {
System.out.println("開門");
System.out.println("點火");
System.out.println("----------------------");
// 開車姿勢不確定?定義為抽象方法
ziShi();
System.out.println("剎車");
System.out.println("熄火");
}
public abstract void ziShi();
}
現在定義兩個使用模板的司機:
public class NewDriver extends Driver {
編寫測試類
public class Demo02 {
public static void main(String[] args) {
NewDriver nd = new NewDriver();
nd.go();
OldDriver od = new OldDriver();
od.go();
}
}
執行效果
-
-
- 主要運用父類和Abstract抽象方法來執行