设计模式之策略者模式
来源:互联网 发布:我的淘宝店铺链接地址 编辑:程序博客网 时间:2024/06/01 11:06
策略者模式思想是一个接口有多个实现类 把接口封装在一个封装类中调用的时候创建实现类对象传入封装类中 ,用到了向上转型
1 .策略接口
/** * 策略接口 */public interface IStrategy { public void operate();}
2 .实现策略的实现类
/** * 实现方法 */public class BackDoor implements IStrategy { @Override public void operate() { System.out.println("策略者1"); }}public class BackDoor2 implements IStrategy { @Override public void operate() { System.out.println("策略者2"); }}public class BackDoor3 implements IStrategy { @Override public void operate() { System.out.print("策略者3"); }}
3 .放置实现方法的类
/** * 封装实现的方法 */public class Context { private IStrategy iStrategy; public Context(IStrategy iStrategy){ this.iStrategy=iStrategy; } public void operate(){ iStrategy.operate(); }}
4 .实现策略实现
public class Main { private static Context context; public static void main(String[] args) { context = new Context(new BackDoor()); context.operate(); context = new Context(new BackDoor2()); context.operate(); context = new Context(new BackDoor3()); context.operate(); }}
打印结果: 策略者1 策略者2 策略者3
0 0
- 设计模式之策略者模式
- c++设计模式之策略者模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 谈Objective-C Block的实现
- 初学grunt压缩
- Mysql 用一个表更新另一个表的内容
- Linux学习笔记(二)
- 如何将本地计算机的文件复制到外网连接的计算机上
- 设计模式之策略者模式
- [LeetCode]Longest Increasing Path in a Matrix
- c++实验报告 打印图形
- jpa自动建表出错
- 泛型T约束
- 安装cnpm加快npm install安装速度
- eclipse安装cdt插件
- getString(int resId, Object... formatArgs)的用法
- 转盘