利用简单工厂模式编写Java程序实现汉堡制作。具体要求:1.接受用户输入的信息,选择需要制作的汉堡,可供选择的汉堡有香辣鸡腿堡、奥尔良烤堡。2.程序运行结果参照如下内容:1)请选择您需要制作的汉堡:1.鸡腿堡 2.奥尔良烤堡 2)您选择的是鸡腿堡,请备注您需要的口味:1.香辣 2.原味 3)请选择需要加入的配菜:1.生菜2.白菜 4)请选择免费的饮品:1.可乐 2.橙汁 客官,您的订单: 汉堡:香辣鸡腿堡 添加的配菜:白菜 选送的饮品:可乐 1)请选择您需要制作的汉堡:1.鸡腿堡 2.奥尔良烤堡 2)您选择的是奥尔良烤堡,请备注您是否需要加奶酪:1.是2.否 3)请选择需要加入的配菜:1.生菜 2.白菜 4)请选择免费的饮品:1.可乐 2.橙汁 客官,您的订单: 汉堡:奥尔良烤堡 添加的配菜:生菜 选送的饮品:橙汁 测试类:用户输入需求的汉堡信息:
时间: 2024-04-05 22:35:58 浏览: 11
好的,请稍等片刻,我为您编写一个简单工厂模式的Java程序来实现汉堡制作。下面是代码实现:
首先,我们需要创建一个汉堡接口IHamburger,汉堡有三个属性,分别是汉堡名称、配菜和饮品,代码如下:
```
public interface IHamburger {
String getName(); //获取汉堡名称
String getIngredients(); //获取配菜
String getDrink(); //获取饮品
}
```
然后,我们需要创建两个具体的汉堡类,分别是香辣鸡腿堡和奥尔良烤堡,代码如下:
```
public class SpicyChickenBurger implements IHamburger {
@Override
public String getName() {
return "香辣鸡腿堡";
}
@Override
public String getIngredients() {
return "白菜";
}
@Override
public String getDrink() {
return "可乐";
}
}
public class OrleansGrilledBurger implements IHamburger {
private boolean addCheese; //是否加奶酪
public OrleansGrilledBurger(boolean addCheese) {
this.addCheese = addCheese;
}
@Override
public String getName() {
return "奥尔良烤堡";
}
@Override
public String getIngredients() {
return "生菜";
}
@Override
public String getDrink() {
return "橙汁";
}
public boolean isAddCheese() {
return addCheese;
}
public void setAddCheese(boolean addCheese) {
this.addCheese = addCheese;
}
}
```
接下来,我们需要创建一个工厂类HamburgerFactory,用于创建汉堡对象,代码如下:
```
public class HamburgerFactory {
public static IHamburger createHamburger(int type) {
switch (type) {
case 1:
return new SpicyChickenBurger();
case 2:
System.out.println("请选择是否需要加奶酪:1.是 2.否");
Scanner scanner = new Scanner(System.in);
boolean addCheese = scanner.nextInt() == 1;
return new OrleansGrilledBurger(addCheese);
default:
return null;
}
}
}
```
最后,我们需要创建一个测试类Test,用于接收用户输入的需求信息,并输出制作好的汉堡订单,代码如下:
```
public class Test {
public static void main(String[] args) {
System.out.println("请选择您需要制作的汉堡:1.鸡腿堡 2.奥尔良烤堡");
Scanner scanner = new Scanner(System.in);
int type = scanner.nextInt();
IHamburger hamburger = HamburgerFactory.createHamburger(type);
if (hamburger == null) {
System.out.println("您输入的汉堡类型有误!");
return;
}
System.out.println("请选择需要加入的配菜:1.生菜 2.白菜");
int ingredient = scanner.nextInt();
String ingredients = "";
switch (ingredient) {
case 1:
ingredients = "生菜";
break;
case 2:
ingredients = "白菜";
break;
default:
System.out.println("您选择的配菜有误!");
return;
}
System.out.println("请选择免费的饮品:1.可乐 2.橙汁");
int drink = scanner.nextInt();
String drinks = "";
switch (drink) {
case 1:
drinks = "可乐";
break;
case 2:
drinks = "橙汁";
break;
default:
System.out.println("您选择的饮品有误!");
return;
}
System.out.println("客官,您的订单:");
System.out.println("汉堡:" + hamburger.getName());
System.out.println("添加的配菜:" + ingredients);
System.out.println("选送的饮品:" + drinks);
scanner.close();
}
}
```
以上就是利用简单工厂模式编写Java程序实现汉堡制作的全部代码实现。您可以在测试类中输入1或2来选择需要制作的汉堡,然后输入1或2来选择需要加入的配菜,最后输入1或2来选择免费的饮品。程序将根据您的输入,输出制作好的汉堡订单。