策略模式
时间:2019-03-15
本文章向大家介绍策略模式,主要包括策略模式使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
策略模式其思想就是把一系列的算法封装到具有相同接口的独立的类中,从而使他们可以相互替换。而其最大的特点是使得算法可以在不影响客户端的情况下发生改变,从而 实现不同的功能。
举个例子:
Java的工具类TreeSet,这个类实现了一个Comparator接口(这个接口里面是个空壳,只是一个形式而已),其TreeSet本身并没有实现这个接口,需要外部的实现类去实现它再传入TreeSet,例如:Set<Integer> set=new TreeSet<>();里面的Integer就是具体实现了Comparator接口,并且定义了如何排序,因此TreeSet里面的Integer对象才能进行排序。所以我们可以自己去实现Comparator接口,然后在实现类里面封装自己的规则(这个可以当做是算法),最后把这个实现类传入TreeSet里面去就行了。
事实上,没有把具体的实现类传入TreeSet时,TreeSet本身是不知道的,只有运行的时候才知道具体的实现规则
- 测试人员的“偷懒大法”
- Flash背景透明的代码
- Maven私服Nexus3.x环境构建操作记录
- Mapx用xml创建点图层
- 编程语言之间的百舸争流
- Mysql连接错误:Lost connection to Mysql server at 'waiting for initial communication packet'
- 适应现代变化的数据架构
- Linux下修改系统编码的操作记录
- 微信公众平
- linq to xml复习
- web cache server方案比较:varnish、squid、nginx
- Nginx虚拟目录alias和root目录
- Nginx的https配置记录以及http强制跳转到https的方法梳理
- VPC下访问FTP的问题
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 基于SSH的医院在线挂号
- Linux-远程拷贝(scp命令)
- Kettle使用JavaScript代码处理数据
- Hadoop入门---(wordcount)统计单词出现的次数
- JS去除字符串的空格
- insertionSoft(插入排序) 2.1-1 And 重写insertionSoft 2.1-2
- Swagger-Springboot-mybatis-mysql
- Python+java+websocket+SpringMVC实时监控数据库中的表
- 基于Java图形界面的IPV4与网址的地址解析器
- 如何在千里之外能访问自己的电脑?(FRP)
- 三分钟Docker-镜像、容器实战篇
- 看懂今天这个!你就是个真正的javaer!
- 猿进化系列7——一文搞懂IO
- 猿进化系列13——一文搞懂MVC相关框架套路
- 猿进化系列16——实战之一学会SQL开发正确姿势