主要特点
1.定义一系列算法,这些算法都完成相同的工作,只是实现不同
2.strategy 层次的context 主要实现具体算法方法的实现
3.客户层次的调用,由客户层决定调用具体的算法
4.封装算法的变化,定义算法家族,算法之间可以相互替换,而不影响使用的客户
interface Ioperate
{
public void operate();
}
class design_mode_Strategy_A implements Ioperate
{
public void operate()
{
System.out.println("this is design_mode_Strategy_A method ");
}
}
class design_mode_Strategy_B implements Ioperate
{
public void operate()
{
System.out.println("this is design_mode_Strategy_B method ");
}
}
class design_mode_Strategy_C implements Ioperate
{
public void operate()
{
System.out.println("this is design_mode_Strategy_C method ");
}
}
class design_mode_Strategy_Context
{
private Ioperate _Ioperate;
public design_mode_Strategy_Context(Ioperate ope)
{
_Ioperate = ope;
}
public void operate()
{
this._Ioperate.operate();
}
}
design_mode_Strategy_Context tx;
tx = new design_mode_Strategy_Context( new design_mode_Strategy_B());
tx.operate();