博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java学习笔记-策略模式
阅读量:4885 次
发布时间:2019-06-11

本文共 402 字,大约阅读时间需要 1 分钟。

定义:一系列的算法,把每一个算法封装起来, 并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。

适用:

 当存在以下情况时使用Strategy模式

1)• 许多相关的类仅仅是行为有异。 “策略”提供了一种用多个行为中的一个行为来配置一个类的方法。即一个系统需要动态地在几种算法中选择一种。

 

2)• 需要使用一个算法的不同变体。例如,你可能会定义一些反映不同的空间 /时间权衡的算法。当这些变体实现为一个算法的类层次时 ,可以使用策略模式。

 

3)• 算法使用客户不应该知道的数据。可使用策略模式以避免暴露复杂的、与算法相关的数据结构。

4)• 一个类定义了多种行为 , 并且这些行为在这个类的操作中以多个条件语句的形式出现。将相关的条件分支移入它们各自的Strategy类中以代替这些条件语句。

 

转载于:https://www.cnblogs.com/lance-/p/3681686.html

你可能感兴趣的文章
WFP: 读取XPS文件或将word、txt文件转化为XPS文件
查看>>
JS 自定义回调函数callback
查看>>
csharp-source is a website contains complete list of csharp os
查看>>
03-3. Tree Traversals Again (PAT) - 树的遍历问题
查看>>
Mssql备份得webshell突破特殊字符限制
查看>>
性能测试纲领
查看>>
StyleCop源码分析
查看>>
【转】配置Jmeter的自定义参数
查看>>
java 文件压缩和解压(ZipInputStream, ZipOutputStream)
查看>>
Backtrack5 R1 中文支持 ibus输入法
查看>>
VC++6.0下新建工程中有17个选项,都是做什么用
查看>>
Codeforces Good Bye 2016 题解
查看>>
加班备注信息
查看>>
在eclipse中配置server和database
查看>>
将excel导入mysql(使用navicat)
查看>>
一、Spring Cloud介绍
查看>>
.NET技术+25台服务器怎样支撑世界第54大网站
查看>>
一键部署LNMP堆栈Web应用基础架构
查看>>
傻逼暴力法画蛇皮矩阵图
查看>>
Leetcode 103
查看>>