策略模式

 1 public class ttt {
 2 
 3     public static void main(String[] args) {
 4         ProduceContext pc = new ProduceContext(new Winter());
 5         pc.GetDecision(555);
 6     }
 7 }
 8 //父类
 9 interface ProduceStrategy{
10     void Decision(int capital);
11 }
12 //冬季
13 class Winter implements ProduceStrategy{
14 
15     @Override
16     public void Decision(int capital) {
17         System.out.println("冬季"+capital);
18     }
19     
20 }
21 //夏季
22 class Summer implements ProduceStrategy{
23 
24     @Override
25     public void Decision(int capital) {
26         System.out.println("夏季"+capital);
27     }
28     
29 }
30 //重要一环
31 class ProduceContext{
32     private ProduceStrategy ps;
33     //生产上下文
34     public ProduceContext(ProduceStrategy ps) {
35         this.ps = ps;
36     }
37     //如何决策
38     public void GetDecision(int capital) {
39         ps.Decision(capital);
40     }
41 }

输出:

      冬季555

posted @ 2017-11-30 15:08  勤劳的杯子  阅读(75)  评论(0编辑  收藏  举报