今日收获

实验 23:策略模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解策略模式的动机,掌握该模式的结构;

2、能够利用策略模式解决实际问题。

 

[实验任务一]:旅行方式的选择

旅游的出行方式有乘坐飞机旅行、乘火车旅行和自行车游,不同的旅游方式有不同的实现过程,客户可以根据自己的需要选择一种合适的旅行方式。

package shiyan23;

public class AirplaneStrategy implements TravelStrategy {
    @Override
    public void travel() {
        System.out.println("选择飞机作为出行方式!");
    }
}
package shiyan23;

public class BicycleStrategy implements TravelStrategy {
    @Override
    public void travel() {
        System.out.println("选择自行车出行!");
    }
}
package shiyan23;

public class People {

    TravelStrategy strategy;

    public void setStrategy(TravelStrategy strategy) {
        this.strategy = strategy;
    }

    public void travel(){
         strategy.travel();
     }
}
package shiyan23;

public class test {
    public static void main(String[] args) {
        People people = new People();
        //这是飞机
        TravelStrategy strategy = new AirplaneStrategy();
        people.setStrategy(strategy);
        people.travel();
        System.out.println("=============");
        //这是自行车
        TravelStrategy strategy1 = new BicycleStrategy();
        people.setStrategy(strategy1);
        people.travel();


    }
}
package shiyan23;

public class TrainStrategy implements TravelStrategy {
    @Override
    public void travel() {
        System.out.println("选择火车作为出行方式!");
    }
}
package shiyan23;
//策略模式之出行方式选择
public interface TravelStrategy {

    public void travel();
}
原文地址:https://www.cnblogs.com/Nojava/p/14157335.html