面向对象 多态作业

来源:互联网 发布:c语言词汇 编辑:程序博客网 时间:2024/06/16 17:25

 * 1.编写程序实现比萨制作。
 * 需求说明编写程序,接收用户输入的信息,选择需要制作的比萨。
 * 可供选择的比萨有:培根比萨和海鲜比萨。
 * 实现思路及关键代码
 * 1)分析培根比萨和海鲜比萨
 * 2)定义比萨类
 * 3)属性:名称、价格、大小
 * 4)方法:展示
 * 5)定义培根比萨和海鲜比萨继承自比萨类

 * 6)定义比萨工厂类,根据输入信息产生具体的比萨对象程序运行结果如图所示

public abstract class Pizza {String name;int prince;int size;public abstract void show();}
public class Bacon extends Pizza{@Overridepublic void show() {name = "培根披萨";Scanner sc = new Scanner(System.in);System.out.println("请输入培根的克数:");String a = sc.nextLine();System.out.println("请输入披萨的大小:");size = sc.nextInt();System.out.println("请输入披萨的价格:");prince = sc.nextInt();System.out.println("名称:"+name+"\n价格:"+prince+"\n大小:"+size+"寸\n培根克数:"+a);}}

public class Seafood extends Pizza {@Overridepublic void show() {name = "海鲜披萨";Scanner sc = new Scanner(System.in);System.out.println("请输入配料信息:");String a = sc.nextLine();System.out.println("请输入披萨的大小:");size = sc.nextInt();System.out.println("请输入披萨的价格:");prince = sc.nextInt();System.out.println("名称:" + name + "\n价格:" + prince + "\n大小:" + size+ "寸\n配料:" + a);}}

public class Test {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入想要制作的披萨:(1.培根披萨 2.海鲜披萨)");int i = sc.nextInt();if (i == 1) {Bacon b = new Bacon();b.show();} else if (i == 2) {Seafood s = new Seafood();s.show();}}}

* 1.编写程序实现饮料购买:
 * 编写程序,接收用户输入的信息,选择购买的饮料。
 * 可供选择的饮料有:咖啡、矿泉水和可乐。
 * 其中,购买咖啡时可以选择:加糖、加奶还是什么都不加。
 * 购买可乐时可以选择:买可口可乐还是百事可乐。
public class Coffee{public void kb(){Scanner sc = new Scanner(System.in);System.out.println("请输入购买容量:");int b = sc.nextInt();System.out.println("请问是否要配料:(1、加糖  2、加奶  3、什么都不加)");int c = sc.nextInt();System.out.println("您购买的饮料信息如下:\n名称:咖啡\n容量:"+b);if(c==1){System.out.println("添加配料:加糖");}else if(c==2){System.out.println("添加配料:加奶");}else if(c==3){System.out.println("添加配料:什么都不加");}}}
public class Water {public void kb(){Scanner sc = new Scanner(System.in);System.out.println("请输入购买容量:");int b = sc.nextInt();System.out.println("您购买的饮料信息如下:\n名称:矿泉水\n容量:"+b);}}

public class Coke {public void kb(){String name = null;Scanner sc = new Scanner(System.in);System.out.println("请输入购买容量:");int b = sc.nextInt();System.out.println("请选择你要购买的类型:(1、可口可乐  2、百事可乐  )");int c = sc.nextInt();if(c==1){name = "可口可乐";}else if(c==2){name = "百事可乐";}else{System.out.println("不存在");}System.out.println("您购买的饮料信息如下:\n名称:"+name+"\n容量:"+b);}}
public class Demo {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请选择饮料:(1、咖啡  2、矿泉水  3、可乐)");int i = sc.nextInt();if(i==1){Coffee c = new Coffee();c.kb();}else if(i==2){Water w = new Water();w.kb();}else if(i==3){Coke c = new Coke();c.kb();}}}




原创粉丝点击