首页 > 代码库 > 二、模版方法设计模式

二、模版方法设计模式

模板方法设计模式:

解决的问题:当功能内部一部分实现是确定,一部分实现是不确定的。这时可以把不确定的部分暴露出去,让子类去实现。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
abstract class GetTime{
 
    public final void getTime(){ //此功能如果不需要复写,可加final限定
 
        long start = System.currentTimeMillis();
 
        code(); //不确定的功能部分,提取出来,通过抽象方法实现
 
        long end = System.currentTimeMillis();
 
        System.out.println("毫秒是:"+(end-start));
 
    }
 
    public abstract void code(); //抽象不确定的功能,让子类复写实现
 
}
 
class SubDemo extends GetTime{
 
    public void code(){ //子类复写功能方法
 
        for(int y=0; y<1000; y++){
 
            System.out.println("y");
 
        }
 
    }
 
}