
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
Java编程开发语言是目前大多数程序员都在学习和使用的一种软件编程开发语言,而本文我们就通过案例分析来简单了解一下,Java编程策略模式的概念与应用分析。
1、模式描述
定义一个算法的系列,将其各个分装,并且使他们有交互性。策略模式使得算法在用户使用的时候能独立的改变。
在Java中,从JDK1.8开始支持函数式编程,就是策略模式的一种体现,且无需借助额外的类和接口,代码更加简洁。
2、模式结构
抽象策略类:定义策略算法的规范。
具体策略类:实现抽象策略类,提供具体的算法实现或行为。
环境类:持有抽象策略类的引用,由客户端构造时,客户制定具体使用策略类。
3、实现逻辑
定义一个抽象类或接口(抽象策略类),定义出算法或行为规范;再实现多个具体策略类;定义环境类持有抽象引用;在客户端调用动态选择策略。
4、适用场景
需要在运行时,动态选择对象内算法。
需要客户端调用时自主选择算法。
5、策略模式和桥接模式区别
策略模式属于对象行为型模式,而桥接模式属于结构型模式。
两种模式都存在一个对象使用聚合的方式引用另一个对象的抽象接口的情况,而且接口的实现可以有多种提供给客户端选择。但相对于策略模式,桥接模式表示的内容更多,结构更复杂,主要目的实现接口隔离原则,即把本质上并不内聚的两种体系区分开来,而策略模式只是算法的层次,没有达到体系层次。从结构上看,桥接模式是包括策略模式,可以看成策略模式的Plus版。
6、策略模式和模版模式区别
策略模式属于对象行为模式,基于组合机制,在对象层次运作,允许在运行时切换行为。
模版方法模式属于类行为模式,基于继承机制,允许通过扩展子类的部分内容来改变部分算法。
模版方法是调整流程中部分算法或流程的处理,策略模式前调完全替换整个算法。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。