2023/10/30 每日总结

今天完成了设计模式实验23

实验 23:策略模式

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

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

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

 

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

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

源代码

复制代码
package org.test23;

public class BikeTravel implements Travel{
    @Override
    public void travel() {
        System.out.println("自行车游");
    }
}



package org.test23;

import java.util.Scanner;

public class Client {
    public static void main(String[] args) {
        Travel flightTravel = new FlightTravel();
        Travel trainTravel = new TrainTravel();
        Travel bikeTravel = new BikeTravel();
        Scanner scanner = new Scanner(System.in);
        System.out.println("选择出行方式.飞机,火车,自行车");
        // 根据用户的选择来选择策略
        switch (scanner.next()) {
            case "飞机":
                new TravelContext(flightTravel).travel();
                break;
            case "火车":
                new TravelContext(trainTravel).travel();
                break;
            case "自行车":
                new TravelContext(bikeTravel).travel();
                break;
            default:
                System.out.println("无效的出行方式选择");
        }
    }
}




package org.test23;

public class FlightTravel implements Travel{
    @Override
    public void travel() {
        System.out.println("乘坐飞机旅行");
    }
}




package org.test23;

public class TrainTravel implements Travel{
    @Override
    public void travel() {
        System.out.println("乘火车旅行");
    }
}




package org.test23;

public interface Travel {
    void travel();
}




package org.test23;

public class TravelContext {
    private Travel travel;

    public TravelContext(Travel travel) {
        this.travel = travel;
    }

    public void travel() {
        travel.travel();
    }
}
复制代码

 

posted @   樱花开到我身边  阅读(10)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示