软件设计策略模式

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

package 实验23策略模式;

class AirplaneStrategy implements  TravelStrategy
{    
    public void travelMethod()
    {
        System.out.println("飞机游!");
    }
}
AirplaneStrategy
package 实验23策略模式;

class BicycleTravelStrategy implements  TravelStrategy
{
    public void travelMethod()
    {
        System.out.println("自行车游!");
    }
}
BicycleTravelStrategy
package 实验23策略模式;

class TrainStrategy implements  TravelStrategy
{
    public void travelMethod()
    {
        System.out.println("火车游!");
    }
}
TrainStrategy
package 实验23策略模式;

interface TravelStrategy
{
    
    public void travelMethod();

}
TravelStrategy
package 实验23策略模式;

class MyContext
{
    private TravelStrategy ts;
    public MyContext(TravelStrategy ts)
    {
        this.ts=ts;
    }
    public void travelMethod()
    {
        ts.travelMethod();
    }
}
MyContext
package 实验23策略模式;

public class Client {
    public static void main(String args[])
    {
        MyContext mc=new MyContext(new BicycleTravelStrategy());
        mc.travelMethod();
        MyContext mc2=new MyContext(new AirplaneStrategy());
        mc2.travelMethod();
        MyContext mc3=new MyContext(new TrainStrategy());
        mc3.travelMethod();
    }
}
Client

 

posted @ 2021-11-17 08:04  陈涵  阅读(13)  评论(0编辑  收藏  举报