编写Java程序,通过接口摸拟麦当劳食物生产过程,接口设计

简介: 编写Java程序,通过接口摸拟麦当劳食物生产过程,接口设计

需求说明:


通过接口摸拟麦当劳食物生产过程

68.png

实现思路:


通过接口摸拟麦当劳食物生产过程的实现思路:


创建接口食物(Food),该接口需要被所有的食物类所实现。在该接口中定义getFood()方法。


创建麦香鸡类(McChicken) ,该类实现Food接口,并重写Food接口的getFood()方法。


创建薯条类(Chips),该类实现Food接口,并重写Food接口的getFood()方法。


创建生产食品的工厂类(FoodFactory),在该类中定义静态方法createFood(String type)方法,在该方法中通过传入参数的字符串值,判断用户需要何种食物,如果工厂中有该食物,则创建该食物对象,否则给出友好提示信息。


实现代码:


接口食物(Food):

public interface Food {
  void getFood();
}


麦香鸡类(McChicken):


public class McChicken implements Food {
  @Override
  public void getFood() {
  }
}


薯条类(Chips):


public class Chips implements Food{
  @Override
  public void getFood() {
  }
}


生产食品的工厂类(FoodFactory):


public class FoodFactory {
  public static Food createFood(String type){
     //通过传递的字符串参数判断用户需要的食物
     if(type.equals("mcchicken")) {
       //如果条件满足则创建对象的食物对象
       return new McChicken();
     }else if(type.equals("chips")) {
       return new Chips();
     } else {
       System.out.println("对不起没有该食物!");
       return null;
     }
   }
}


创建客户(Client):


public class Client {
  public static void main(String[] args) {
                //通过食物工厂创建食物
               Food mcchicken=FoodFactory.createFood("mcchicken");
               mcchicken.getFood();
                Food chips=FoodFactory.createFood("chips");
                chips.getFood();
  }
}




相关文章
|
25天前
|
Java
【Java】一个简单的接口例子(帮助理解接口+多态)
【Java】一个简单的接口例子(帮助理解接口+多态)
16 0
|
29天前
|
Java
java程序导出堆文件
java程序导出堆文件
|
1月前
|
SQL Oracle Java
sql文件批处理程序-java桌面应用
sql文件批处理程序-java桌面应用
24 0
|
29天前
|
Java
JAVA接口
JAVA接口
12 0
|
5天前
|
Java Maven
【Java报错】显示错误“Error:java: 程序包org.springframework.boot不存在“
【Java报错】显示错误“Error:java: 程序包org.springframework.boot不存在“
23 3
|
4天前
|
安全 Java 编译器
接口之美,内部之妙:深入解析Java的接口与内部类
接口之美,内部之妙:深入解析Java的接口与内部类
20 0
接口之美,内部之妙:深入解析Java的接口与内部类
|
8天前
|
缓存 安全 Java
Java中函数式接口详解
Java 8引入函数式接口,支持函数式编程。这些接口有单一抽象方法,可与Lambda表达式结合,简化代码。常见函数式接口包括:`Function<T, R>`用于转换操作,`Predicate<T>`用于布尔判断,`Consumer<T>`用于消费输入,`Supplier<T>`用于无参生成结果。开发者也可自定义函数式接口。Lambda表达式使实现接口更简洁。注意异常处理和线程安全。函数式接口广泛应用于集合操作、并行编程和事件处理。提升代码可读性和效率,是现代Java开发的重要工具。
18 0
|
8天前
|
Java 关系型数据库 MySQL
大厂面试题详解:Java抽象类与接口的概念及区别
字节跳动大厂面试题详解:Java抽象类与接口的概念及区别
33 0
|
8天前
|
Java
Java中的多线程实现:使用Thread类与Runnable接口
【4月更文挑战第8天】本文将详细介绍Java中实现多线程的两种方法:使用Thread类和实现Runnable接口。我们将通过实例代码展示如何创建和管理线程,以及如何处理线程同步问题。最后,我们将比较这两种方法的优缺点,以帮助读者在实际开发中选择合适的多线程实现方式。
19 4
|
20天前
|
Java
elasticsearch使用java程序添加删除修改
elasticsearch使用java程序添加删除修改
9 0