题目
代码
Pizza父类
package com.zxf01; //父类 public class Pizza { //构造器 public Pizza(){ } //属性 private String name; private double price; private int size; private int gram; private String note; //setting和getting方法 public String getNote() { return note; } public void setNote(String note) { this.note = note; } public int getGram() { return gram; } public void setGram(int gram) { this.gram = gram; } public String getName() { return name; } public void setName(String name) { this.name = name; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public int getSize() { return size; } public void setSize(int size) { this.size = size; } public void input(){ } public void showInfo(){ } }
培根披萨类
package com.zxf01; //培根披萨类 import java.util.Scanner; public class Bacon extends Pizza { //构造器 public Bacon(){ } //属性 private String name = "培根披萨"; //方法重写 @Override public void input() { Scanner scanner = new Scanner(System.in); System.out.print("请输入培根的克数:"); setGram(scanner.nextInt()); System.out.print("请输入披萨的大小:"); setSize(scanner.nextInt()); System.out.print("请输入披萨的价格:"); setPrice(scanner.nextDouble()); } public void showInfo(){ System.out.println("名称:"+name); System.out.println("价格:"+getPrice()+"元"); System.out.println("大小:"+getSize()+"寸"); System.out.println("配料水果:"+getGram()+"g"); } }
水果披萨类
package com.zxf01; import java.util.Scanner; //水果披萨类 public class Fruits extends Pizza { //构造器 public Fruits(){ } //属性 private String name = "水果披萨"; //方法重写 @Override public void input() { Scanner scanner = new Scanner(System.in); System.out.print("请输入你想要加入的水果:"); setNote(scanner.next()); System.out.print("请输入披萨的大小:"); setSize(scanner.nextInt()); System.out.print("请输入披萨的价格:"); setPrice(scanner.nextDouble()); } public void showInfo(){ System.out.println("名称:"+name); System.out.println("价格:"+getPrice()+"元"); System.out.println("大小:"+getSize()+"寸"); System.out.println("配料水果:"+getNote()); } }
披萨工厂
package com.zxf01; //工厂类 public class PizzaFactory { public static Pizza getPizza(int i){ Pizza pizza = null; if (i==1){ pizza = new Bacon(); } if (i==2){ pizza = new Fruits(); } return pizza; } }
测试类
package com.zxf01; import java.util.Scanner; //测试类 public class BuyPizza { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请选择想要制作的披萨:1.培根披萨 2.水果披萨: "); Pizza pizza = PizzaFactory.getPizza(scanner.nextInt()); pizza.input(); pizza.showInfo(); } }