要求:
实现思路及关键代码
1) 分析培根比萨和海鲜比萨
2) 定义比萨类
3) 属性:名称、价格、大小
4) 方法:展示
5) 定义培根比萨和海鲜比萨继承自比萨类
6) 定义比萨工厂类,根据输入信息产生具体的比萨对象
代码如下
1.定义一个披萨类
package test;
import java.util.Scanner;
public class Pizza {
String name;
double price;
String size;
public Pizza(String name,double price,String size){
this.name=name;
this.price=price;
this.size=size;
}
}
定义一个培根类
package test;
public class BaconPizza extends Pizza{
double g;//重量
public BaconPizza(String name,double price,String size){
super(name, price, size);
}
public void name(){
System.out.println("名称:"+name);
}
public void price(){
System.out.println("价格:"+price+"元");
}public void size(){
System.out.println("尺寸:"+size+"寸");
}
public void g(){
System.out.println("培根克数:"+g);
}
}
定义一个海鲜类
package test;
public class SeafoodPizza extends Pizza{
String dosing;//配料
public SeafoodPizza(String name,double price,String size){
super(name, price, size);
}
public void name(){
System.out.println("名称:"+name);
}
public void price(){
System.out.println("价格:"+price+"元");
}public void size(){
System.out.println("尺寸:"+size+"寸");
}
public void dosing(){
System.out.println("配料:"+dosing);
}
}
运行效果
package test;
import java.util.Scanner;
public class PizzaDemo {
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
System.out.println("请输入想要制作的披萨(1.培根披萨 2.海鲜披萨)");
int i=sc.nextInt();
if(i==1){
System.out.println("请输入培根克数:");
int a=sc.nextInt();
System.out.println("请输入披萨大小:");
String size=sc.next();
System.out.println("请输入披萨价格:");
double preice=sc.nextDouble();
Pizza n=new BaconPizza("培根披萨", preice, size);
((BaconPizza) n).name();
((BaconPizza) n).price();
((BaconPizza) n).size();
System.out.println("培根克数:"+a);
}
if(i==2){
System.out.println("请配料信息:");
Scanner sc1=new Scanner(System.in);
String a=sc1.next();
System.out.println("请输入披萨大小:");
String size=sc1.next();
System.out.println("请输入披萨价格:");
double price=sc1.nextDouble();
SeafoodPizza n=new SeafoodPizza("海鲜披萨", price, size);
n.name();
n.price();
n.size();
System.out.println("配料:"+a);
}
}
}