本月博客排行
-
第1名
Xeden -
第2名
fantaxy025025 -
第3名
bosschen - paulwong
- johnsmith9th
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - gengyun12
- wy_19921005
- vipbooks
- e_e
- benladeng5225
- wallimn
- ranbuijj
- javashop
- jickcai
- fantaxy025025
- zw7534313
- qepwqnp
- robotmen
- 解宜然
- ssydxa219
- sam123456gz
- zysnba
- sichunli_030
- tanling8334
- arpenker
- gaojingsong
- xpenxpen
- kaizi1992
- wiseboyloves
- jh108020
- xyuma
- ganxueyun
- wangchen.ily
- xiangjie88
- Jameslyy
- luxurioust
- mengjichen
- lemonhandsome
- jbosscn
- nychen2000
- zxq_2017
- lzyfn123
- wjianwei666
- forestqqqq
- ajinn
- siemens800
- hanbaohong
- 狂盗一枝梅
- java-007
- zhanjia
- 喧嚣求静
- Xeden
最新文章列表
DesignPattern : Strategy
1. Introduction
Look at the example below:
We want to sort an array of integer.
1) Test case
package edu.xmu.designPattern.DesignPattern_Strategy;
import java.util.ArrayList;
impo ...
策略模式--从源码TabHost中看策略模式
什么是策略模式:
针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。
应当由客户端自己决定在什么情况下使用什么具体策略模式。
策略模式不适合于处理同时嵌套多于一个算法的情形。
针对的设计原则:
封装变化的。
多用组合,少用继承。
针对接口编程,不针对实现编程。
优缺点:
优点:
...
折扣计算策略--设计模式应用
折扣计算,策略模式和装饰模式的具体应用。
package org.tang.zjnumall.strategy.discount;
import java.math.BigDecimal;
public abstract class AbstractDiscountStrategy {
/**
* 单价
*/
protected BigDecimal p ...
策略模式
策略模式可以更换实现算法的部分而且不留痕迹,切换整个算法,简化改为采用其他方法来解决同样的问题,在设计程序时,比较习惯把实现算法这部分结合到方法里面,但是策略模式则故意把算法的部分跟其他部分分开,只规定跟算法有关的接口部分,然后再从程序这边以委托的方式来利用运算法则,因为有了委托关系,所以才能切换算法,尤其是机动性的切换动作
package com.tools.pattern.strategy;
p ...
effective java 第21条:用函数对象表示策略
public class Host {
private static class StrLenCmp implements Comparator<String>,Serializable {
private static final long serialVersionUID = -2947076330971319599L;
...
6-Strategy: choosing the algorithm at run-time
Strategy
: choosing the
algorithm at run-time
Strategy
also adds a “Context” which can be a surrogate class that controls the
selection and use of the particular strategy object—just
like Stat ...