Java模拟披萨店与多态及接口应用
实验内容
题目一
抽象类:编写一个程序,实现模拟开披萨店
定义一个抽象类,Pizza,包括成员变量,名字,口味,辅料,实现构造函数,实现制作Pizza的步骤,包括准备,和面,烘烤,切片,后两个是抽象方法。定义一个抽象类,PizzaStore,实现定披萨的方法orderPizza,传入Pizza的名字,返回Pizza,定义一个抽象方法,createPizza,在orderPizza中调用,实现不可以预定并制作不同口味的pizza。分别定义两个Pizza的子类继承Pizza,并分别实现抽象方法定义一个PizzaStore的子类继承PizzaStore,实现抽象方法主类:生成两款Pizza,和一个PizzaStore店对象,实现购买Pizza实验代码
披萨:
package ShiYan5; abstract public class Pizza {public String name;public String taste;public String accessories;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getTaste() {return taste;}public void setTaste(String taste) {this.taste = taste;}public String getAccessories() {return accessories;}public void setAccessories(String accessories) {this.accessories = accessories;}public void Prepare() {System.out.println("正在准备ing");}public void Mix() {System.out.println("正在和面");}public abstract void Bake();public abstract void Slicing(); }
java
运行
1234567891011121314151617181920212223242526272829303132披萨店:
package ShiYan5; abstract public class PizzaStore {public Pizza OrderPizza(String type) {Pizza pz = CreatePizza(type);pz.Prepare();pz.Mix();pz.Bake();pz.Slicing();return pz;}public abstract Pizza CreatePizza(String type); }
java
运行
123456789101112芝士披萨:
public class CheesePizza extends Pizza {public CheesePizza() {name = "芝士披萨";taste = "甜";accessories = "芝士";}@Overridepublic void Bake() {// TODO Auto-generated method stubSystem.out.println("正在烘焙,请稍等30min");}@Overridepublic void Slicing() {// TODO Auto-generated method stubSystem.out.println("切8份");} }
java
运行
123456789101112131415161718烤肉披萨:
public class BarbecuePizza extends Pizza {public BarbecuePizza() {name = "烤肉披萨";taste = "咸";accessories = "肉";}@Overridepublic void Bake() {// TODO Auto-generated method stubSystem.out.println("正在烘焙,请稍等40min");}@Overridepublic void Slicing() {// TODO Auto-generated method stubSystem.out.println("切成10份");} }
java
运行
1234567891011121314151617烤肉披萨店(继承披萨店):
public class BarbecuePizzaStore extends PizzaStore {@Overridepublic Pizza CreatePizza(String type) {if(type.equals("芝士披萨")) {CheesePizza cp = new CheesePizza();return cp;}else if(type.equals("烤肉披萨")) {BarbecuePizza bp = new BarbecuePizza();return bp;}return null;} }
java
运行
1234567891011121314测试类:
import java.util.Scanner; public class Test {public static void main(String[] args) {// TODO Auto-generated method stubScanner type = new Scanner(System.in);BarbecuePizzaStore pz = new BarbecuePizzaStore();System.out.println("请输入您所需的披萨");System.out.println("1:芝士披萨");System.out.println("2:烤肉披萨");int b = type.nextInt();String a = null;if(b == 1) {a = "芝士披萨";}else if(b == 2) {a = "烤肉披萨";}else {System.out.println("请重新输入");}pz.OrderPizza(a);} }
java
运行
123456789101112131415161718192021实验结果

题目二
多态:编写一个程序,程序包括如下内容
定义一个Animal的类,成员变量包括名字,年龄,皮毛肤色,实现构造函数,实现成员函数Enjoy,打印动物是可以高兴的定义一个Cat的类,继承Animal的类,继承构造函数,并且重写成员函数,打印猫高兴了要喵喵叫定义一个Dog的类,继承Animal的类,继承构造函数,并且重写成员函数,打印狗高兴了要旺旺叫定义一个Lady的类,成员变量包括名字,年龄和宠物Animal,实现构造函数,实现成员函数MyPetEnjoy,逗宠物高兴主类:实现一个Dog的对象,一个Cat对象,实现Lady对象,实现Lady逗宠物猫和狗。实验代码
宠物大类:
package petpg; import foodpg.Food; public class Pet {private String name;private String color;private int age;public Pet(String name, String color, int age) {super();this.name = name;this.color = color;this.age = age;}public String getName() {return name;}public void enjoy() {System.out.println("我很高兴");} }
java
运行
12345678910111213141516171819狗:继承宠物:
public class Dog extends Pet{public Dog(String name, String color, int age) {super(name, color, age);// TODO Auto-generated constructor stub}public void enjoy() {System.out.println("我很高兴,汪汪叫");} }
java
运行
123456789猫:继承宠物:
public class Cat extends Pet{public Cat(String name, String color, int age) {super(name, color, age);// TODO Auto-generated constructor stub}public void enjoy() {System.out.println("我很高兴,喵喵叫");} }
java
运行
123456789lady:
public class Lady {String name;int age;String Animal;public Lady(String name, int age, String animal) {super();this.name = name;this.age = age;this.Animal = animal;}public void MyPetEnjoy(Pet p) {p.enjoy();} }
java
运行
1234567891011121314测试类:
public class Test {public static void main(String[] args) {// TODO Auto-generated method stubCat mm=new Cat("小白", "黑色",1);Dog d=new Dog("小黑", "白色",2);Lady l=new Lady("动物", 20, "小白和小黑");l.MyPetEnjoy(mm);l.MyPetEnjoy(d);} }
java
运行
1234567891011实验结果

题目三
接口:编写一个程序,程序包含如下内容
定义一个含计算面积和周长方法的图形接口shape(area,length)编写实现图形接口的半圆类。编写实现图形接口的长方体类。主类里面去生成具体对象实现。实验代码
接口:
public interface Shape {public double area();public double length(); }
java
运行
1234⚪类
public class Circle implements Shape {double r;public Circle(double r) {super();this.r = r;}@Overridepublic double area() {return r*r*3.14/2;}@Overridepublic double length() {return 3.14*r+2*r;} }
java
运行
12345678910111213141516三角形
public class Rectangular implements Shape {double length;double width;double high;public Rectangular(double length, double width, double high) {super();this.length = length;this.width = width;this.high = high;}@Overridepublic double area() {return length*high*2+high*width*2+width*length*2;}@Overridepublic double length() {return length+width+high;} }
java
运行
12345678910111213141516171819测试类:
import java.util.Scanner; public class Test1 {public static void main(String[] args) {// TODO Auto-generated method stubScanner sc = new Scanner(System.in);System.out.println("请输入半圆的半径");Circle c = new Circle(sc.nextDouble());System.out.println("请输入长方体的长宽高");Rectangular r = new Rectangular(sc.nextDouble(),sc.nextDouble(),sc.nextDouble());System.out.println("半圆的面积是:"+c.area());System.out.println("半圆的周长是:"+c.length());System.out.println("长方形的面积为:"+r.area());System.out.println("长方形的周长是:"+r.length());} }
java
运行
12345678910111213141516实验结果

相关知识
java多态 面试 java多态例题
编写Java程序,以继承和多态思想模拟饲养员喂养不同动物的不同行为
Java猫和狗(继承,多态,抽象,接口版)上
Java猫和狗(继承,多态,抽象,接口版)下
java多态实现电子宠物系统
java特性封装、抽象、继承、多态理论
Java多态实践
多态
java基于控制台宠物养成 java游戏宠物
米加小镇世界披萨店游戏APP下载
网址: Java模拟披萨店与多态及接口应用 https://www.mcbbbk.com/newsview1342484.html
| 上一篇: 爱宠的美味盛宴:派得狗粮与伊纳宝 |
下一篇: 老年猫零食排行榜,高口碑老年猫零 |
推荐分享
- 1养玉米蛇的危害 28694
- 2狗交配为什么会锁住?从狗狗生 7180
- 3我的狗老公李淑敏33——如何 6236
- 4豆柴犬为什么不建议养?可爱的 4637
- 5南京宠物粮食薄荷饼宠物食品包 4563
- 6中国境内禁养的十大鸟种,你知 4429
- 7湖南隆飞尔动物药业有限公司宠 4259
- 8自制狗狗辅食:棉花面纱犬的美 4257
- 9家养水獭多少钱一只正常 4212
- 10广州哪里卖宠物猫狗的选择性多 4122
