【设计模式】策略设计模式
来源:互联网 发布:java 追加文件内容 编辑:程序博客网 时间:2024/05/17 08:43
假设今天老婆让我去丈母娘家做客,可是我答应了我的情人晚上要回去陪她,这可怎么办?,,正在我纠结的时候,好哥们给我一个三个理由包,让我不要看,到时候看情况拆开
接口
三个妙计是同一个类型,继承同一个接口
/** * 声明一个接口 * @author TTF * */public interface JieKou { public void reson();}
三个理由类
喝酒时候的理由
public class HeJiu implements JieKou { @Override public void reson() { System.out.println("我还要开车呢。。。"); }}
打麻将时候的理由
public class MaJiang implements JieKou { @Override public void reson() { System.out.println("我不会玩牌。。。"); }}
离开的理由
public class LiKai implements JieKou { @Override public void reson() { System.out.println("公司还有事,就先走了。。。"); }}
盛放理由的理由包
public class Context { private JieKou jieKou; public Context(JieKou jieKou) { this.jieKou = jieKou; } public void liYou() { this.jieKou.reson(); }}
去丈母娘家
public class JianZhangMuNiang { public static void main(String[] args) { Context context; System.out.println("见了丈母娘吃饭的时候,丈母娘敬酒了...."); context = new Context(new HeJiu());//拿出有喝酒标签的理由 context.liYou(); System.out.println("吃过饭了,丈母娘要打麻将...."); context = new Context(new MaJiang());//拿出有打麻将标签理由 context.liYou(); System.out.println("麻将不打,气氛不好了,那就找机会离开吧...."); context = new Context(new LiKai());//要走了,拿出走标签的理由 context.liYou(); }}
输出:
见了丈母娘吃饭的时候,丈母娘敬酒了....我还要开车呢。。。吃过饭了,丈母娘要打麻将....我不会玩牌。。。麻将不打,气氛不好了,那就找机会离开吧....公司还有事,就先走了。。。
1 0
- 设计模式-策略模式
- 设计模式:策略模式
- 设计模式-策略模式
- 设计模式 - 策略模式
- 设计模式-策略模式
- 设计模式-----策略模式
- 设计模式 策略模式
- 设计模式-策略模式
- 设计模式-【策略模式】
- 设计模式-----策略模式
- 设计模式-策略模式
- 设计模式--策略模式
- 设计模式- 策略模式
- 设计模式- 策略模式
- 设计模式------策略模式
- 设计模式--策略模式
- 设计模式-策略模式
- 设计模式--策略模式
- layout_gravity和gravity的区别(很简单)
- SSH面试题
- spring jpa整合junit单元测试 ,设置事务自动回滚
- CocoaPods的安装与使用
- Android:Layout_weight的深刻理解
- 【设计模式】策略设计模式
- 【POJ】3070Fibonacci(矩阵快速幂)
- 怎样将IIS Express里面的网站能在局域网访问
- 北京搬家公司大全
- [leetcode][回溯] Combination Sum II
- DesignPatterns_Iterator
- Java IO最详解
- 程序人生之九:2012,回首这7年
- htmlparser使用指南