首页 > 其他分享 >11.28

11.28

时间:2023-11-28 17:00:05浏览次数:24  
标签:11.28 travel System travelStrategy println public out

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

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

 

 

JAVA

package rjsj.no23;

 

public class BicycleStrategy implements TravelStrategy{

    @Override

    public void travel() {

        System.out.println("骑自行车旅游");

    }

}

package rjsj.no23;

 

public class Client {

    public static void main(String[] args) {

        Traveler traveler = new Traveler();

 

        System.out.println("旅游开始!");

        TravelStrategy travelStrategy = new TrainStrategy();

        traveler.setTravelStrategy(travelStrategy);

        traveler.travel();

        System.out.println("**************************************************");

        System.out.println("旅游开始!");

        travelStrategy = new AirplaneStrategy();

        traveler.setTravelStrategy(travelStrategy);

        traveler.travel();

        System.out.println("**************************************************");

        System.out.println("旅游开始!");

        travelStrategy = new BicycleStrategy();

        traveler.setTravelStrategy(travelStrategy);

        traveler.travel();

        System.out.println("**************************************************");

    }

}

package rjsj.no23;

 

public class TrainStrategy implements TravelStrategy{

    @Override

    public void travel() {

        System.out.println("坐火车旅游");

    }

}

package rjsj.no23;

 

public class Traveler {

    private TravelStrategy travelStrategy;

 

    public void setTravelStrategy(TravelStrategy travelStrategy) {

        this.travelStrategy = travelStrategy;

    }

 

    public void travel(){

        travelStrategy.travel();

    }

}

package rjsj.no23;

 

public interface TravelStrategy {

    void travel();

}

package rjsj.no23;

 

public class AirplaneStrategy implements TravelStrategy{

    @Override

    public void travel() {

        System.out.println("乘坐飞机旅游");

    }

}

C++

package rjsj.no23;

 

public class Client {

    public static void main(String[] args) {

        Traveler traveler = new Traveler();

 

        System.out.println("旅游开始!");

        TravelStrategy travelStrategy = new TrainStrategy();

        traveler.setTravelStrategy(travelStrategy);

        traveler.travel();

        System.out.println("**************************************************");

        System.out.println("旅游开始!");

        travelStrategy = new AirplaneStrategy();

        traveler.setTravelStrategy(travelStrategy);

        traveler.travel();

        System.out.println("**************************************************");

        System.out.println("旅游开始!");

        travelStrategy = new BicycleStrategy();

        traveler.setTravelStrategy(travelStrategy);

        traveler.travel();

        System.out.println("**************************************************");

    }

}

package rjsj.no23;

 

public class TrainStrategy implements TravelStrategy{

    @Override

    public void travel() {

        System.out.println("坐火车旅游");

    }

}

package rjsj.no23;

 

public class Traveler {

    private TravelStrategy travelStrategy;

 

    public void setTravelStrategy(TravelStrategy travelStrategy) {

        this.travelStrategy = travelStrategy;

    }

 

    public void travel(){

        travelStrategy.travel();

    }

}

package rjsj.no23;

 

public interface TravelStrategy {

    void travel();

}

package rjsj.no23;

 

public class AirplaneStrategy implements TravelStrategy{

    @Override

    public void travel() {

        System.out.println("乘坐飞机旅游");

    }

}

标签:11.28,travel,System,travelStrategy,println,public,out
From: https://www.cnblogs.com/zhouzhengyang/p/17862345.html

相关文章

  • 11.28-12.2周末总结
    目录MySQL数据库一、多表查询1.方式一:连表查询2.方式二:子查询二、python操作数据库1.python操作数据库的基本操作2.pymysql的中方法三、MySQL中的理论1.sql注入问题(1)现象一......
  • 2022.11.28-12.4 训练小记
    2022.11.28-12.4训练小记UVA12620FibonacciSum斐波那契数列在取模意义下是有循环节的(具体计算以后补),一个结论是在模\(p\)的意义下,循环节的大小不会大于\(6p\)。......
  • 2022.11.28 省选班
    2022.11.28省选班A.[HNOI2015]落忆枫音https://loj.ac/p/2115题目背景「恒逸,你相信灵魂的存在吗?」郭恒逸和姚枫茜漫步在枫音乡的街道上。望着漫天飞舞的红枫,枫茜突......
  • Java.11.28
    一.递归1.递归就是:A方法调用A方法!就是自己调用自己2.递归的能力在于用有限的语句来定义对象的无限集合3.递归结构包含两个部分:3.1.递归头:什么时候......
  • 11.28
    今日内容1.多表查询的方法2.一些知识点的补充3.可视化软件Navicat4.多表查询练习题讲解5.python操作MySQL1.多表查询的方法方式1:连表操作innerjoin 内连......
  • 2022.11.28 很乱
    现在很乱。原本是12.5/7/9考完三门考试,之后我蹭点群论,然后回家问问老师准备毕业论文。本来这两天复习刚有渐入佳境之感,但12.7这门考试推迟到1.7线上闭卷考试了;12.9的时间......
  • 《安富莱嵌入式周报》第241期:2021.11.22--2021.11.28
     ​​​​ 1、【硬件设计开源盛宴】一年一度的hackaday大赛结束,奖金池10万美元,共450件电子作品​​​https://hackaday.io/contest/179533-supplyframe-designlab-2021-ha......