Java中的策略模式
策略模式是对算法的包装,把使用算法的责任和算法本身分隔开,委派给不同的对象管理。
策略模式通常把一系列的算法包装到一系列的策略类里面,作为一个抽象策略类的子类。
何时使用策略模式:
1.如果在一个系统里面有许多类,他们之间的区别仅在于他们的行为,那么使用策略类可以动态的让一个对象在许多行为中选择一种行为。
2.如果系统需要动态的在几种算法中选择一种,那么这些算法可以具体的包装到一个个算法类里面,而这些算法类都是一个抽象类的子类。换言之这些具体的算法类均有统一的接口,由于多态性的原则,客户端可以选择使用任何一个具体的算法类,并只持有一个数据类型是抽象算法类的对象。
3.一个系统的算法使用的数据不可以让客户端知道。策略模式可以避免让客户涉及到不必要的算法和与算法相关的数据。
例子:
相关推荐
tracy 2020-08-31
natloc 2020-07-18
Codeeror 2020-06-28
baike 2020-06-14
Ingram 2020-06-04
yishujixiaoxiao 2020-06-03
走在IT的路上 2020-05-01
txlCandy 2020-04-20
清溪算法君老号 2020-04-14
wuxiaosi0 2020-02-22
shawsun 2020-02-14
spb 2020-02-14
xcguoyu 2020-02-14
wangxiaohua 2014-05-29
mbcsdn 2019-12-20
ustbfym 2019-12-01