0
点赞
收藏
分享

微信扫一扫

设计模式之模版方法模式demo


设计模式之模版方法模式demo_html

设计模式之模版方法模式demo_html5_02

设计模式之模版方法模式demo_html_03

 

设计模式之模版方法模式demo_html_04

设计模式之模版方法模式demo_System_05

public  abstract class SoyaMilk {
//模版方法 可以做成finaL,不让子类去覆盖
final void make(){
select();
addCondiments();
soak();
beat();
}

void select(){
System.out.println("第一步,请选择好的新鲜黄豆");
}

//添加不同的配料,抽象方法,子类具体实现
abstract void addCondiments();



//浸泡
void soak(){
System.out.println("第三部,黄豆和配料开始浸泡,需要三个小时");
}

void beat(){
System.out.println("第四步:黄豆和配料放到豆浆机去打碎");
}
}

 

设计模式之模版方法模式demo_html5_06

 

public class ReadBeanSoyaMilk extends SoyaMilk{
@Override
void addCondiments() {
System.out.println("加入上好的红豆");
}
}

设计模式之模版方法模式demo_System_07

 

 

public class PeanutSoyaMilk extends SoyaMilk{
@Override
void addCondiments() {
System.out.println("加入上好的花生");
}
}

 

设计模式之模版方法模式demo_System_08

 

public class Cilent {
public static void main(String[] args) {
SoyaMilk readBeanSoyaMilk = new ReadBeanSoyaMilk();
readBeanSoyaMilk.make();


SoyaMilk soyaMilk = new PeanutSoyaMilk();
soyaMilk.make();
}
}

 

执行结果

设计模式之模版方法模式demo_html5_09

 

举报

相关推荐

0 条评论