zoukankan      html  css  js  c++  java
  • 策略模式

          策略模式:定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。以下是例子:

    public abstract class Strategy {

    public abstract void method();
     }


    public class StrategyImplA extends Strategy{  

    public void method() {

    System.out.println("这是第一个实现"); } }

     

    public class StrategyImplB extends Strategy{  

    public void method() {

    System.out.println("这是第二个实现"); } }

    public class StrategyImplC extends Strategy{

    public void method() {
    System.out.println("这是第三个实现");}}

    public class Context {  

    Strategy stra;

    public Context(Strategy strategy){

    this.stra = strategy; }

    public void doMethod(){

    stra.method(); } }

    //测试类

    public class Test {  

    public static void main(String[] args) {

    Context ctx = new Context(new StrategyImplA());

    ctx.doMethod();

    ctx = new Context(new StrategyImplB());

    ctx.doMethod();

    ctx = new Context(new StrategyImplC());

    ctx.doMethod(); } }

  • 相关阅读:
    ACM TJU 1556
    HDU 1890 Robotie Sort
    Android学习笔记
    HDU 2795
    HDU 1542
    HDU 1698
    POJ 2185
    学习笔记
    HDU 3336
    HDU 3746
  • 原文地址:https://www.cnblogs.com/lee0oo0/p/2542988.html
Copyright © 2011-2022 走看看