Design Pattern:
In Strategy pattern, a class behavior or its algorithm can be changed at run time. This type of design pattern comes under behavior pattern. 模式:在运行的时候改变其行为
故事场景: NBA中战术有很多很多种:32战术,快攻 等等
下面是战术
public interface Strategy {
public void doAction();
}
public class Strategy32 implements Strategy{
@Override
public void doAction() {
System.out.println("1.采用32战术");
}
}
public class StrategyFast implements Strategy{
@Override
public void doAction() {
System.out.println("2.采用快攻战术");
}
}
球队 - 勇士队
public class Team {
private Strategy strategy;
public Team(Strategy strategy) {
this.strategy = strategy;
}
public void executeStrategy(){
strategy.doAction();
}
}
实验的开始
public class StrategyDemo {
public static void main(String[] args) {
Team warriors = new Team(new Strategy32());
warriors.executeStrategy();
warriors = new Team(new StrategyFast());
warriors.executeStrategy();
}
}