1. 程式人生 > >【java設計模式】【行為模式Behavioral Pattern】策略模式Strategy Pattern

【java設計模式】【行為模式Behavioral Pattern】策略模式Strategy Pattern

java sys algorithm stat 設計模式 log sets ace 行為模式

 1 package com.tn.策略模式;
 2 
 3 public class Client {
 4     private Strategy strategy;
 5     public void setStrategy(Strategy strategy){
 6         this.strategy=strategy;
 7     }
 8     public void exeAlgorithm() {
 9         strategy.exeAlgorithm();
10     }
11     
12     public static void main(String[]args){
13 Strategy strategy1=new ConcreteStrategy1(); 14 Strategy strategy2=new ConcreteStrategy2(); 15 Strategy strategy3=new ConcreteStrategy3(); 16 17 Client c=new Client(); 18 19 c.setStrategy(strategy1); 20 c.exeAlgorithm(); 21 22
c.setStrategy(strategy2); 23 c.exeAlgorithm(); 24 25 c.setStrategy(strategy3); 26 c.exeAlgorithm(); 27 } 28 } 29 interface Strategy{ 30 void exeAlgorithm(); 31 } 32 class ConcreteStrategy1 implements Strategy{ 33 @Override 34 public void exeAlgorithm() {
35 System.out.println("執行算法1……"); 36 } 37 } 38 class ConcreteStrategy2 implements Strategy{ 39 @Override 40 public void exeAlgorithm() { 41 System.out.println("執行算法2……"); 42 } 43 } 44 class ConcreteStrategy3 implements Strategy{ 45 @Override 46 public void exeAlgorithm() { 47 System.out.println("執行算法3……"); 48 } 49 }

【java設計模式】【行為模式Behavioral Pattern】策略模式Strategy Pattern