Java基础马戏团小项目
1、使用多态的特征实现,用到现学的所有知识
效果
*********欢迎来到太阳马戏团**********
******** 请选择表演者 ********
******** 1、棕熊 ********
******** 2、狮子 ********
******** 3、猴子 ********
******** 4、鹦鹉 ********
******** 5、小丑 ********
1
表演者:Bill
年龄:1岁
技能:挽着花篮,打着雨伞,独自走秀
爱好:喜欢卖萌
******** 是否继续观看(0/1) ********
1
*********欢迎来到太阳马戏团**********
******** 请选择表演者 ********
******** 1、棕熊 ********
******** 2、狮子 ********
******** 3、猴子 ********
******** 4、鹦鹉 ********
******** 5、小丑 ********
2
表演者:Lain
年龄:2岁
性别:公狮
毛色:灰色
技能:擅长钻火圈
爱好:喜欢吃各种肉类
******** 是否继续观看(0/1) ********
1
*********欢迎来到太阳马戏团**********
******** 请选择表演者 ********
******** 1、棕熊 ********
******** 2、狮子 ********
******** 3、猴子 ********
******** 4、鹦鹉 ********
******** 5、小丑 ********
3
表演者:Tom
年龄:1岁
品种:金丝猴
技能:骑独轮车过独木桥
爱好:喜欢模仿人对的动作表情
******** 是否继续观看(0/1) ********
1
*********欢迎来到太阳马戏团**********
******** 请选择表演者 ********
******** 1、棕熊 ********
******** 2、狮子 ********
******** 3、猴子 ********
******** 4、鹦鹉 ********
******** 5、小丑 ********
4
表演者:Rose
年龄:1岁
品种:牡丹鹦鹉
技能:擅长模仿
爱好:喜欢吃坚果和松子
******** 是否继续观看(0/1) ********
1
*********欢迎来到太阳马戏团**********
******** 请选择表演者 ********
******** 1、棕熊 ********
******** 2、狮子 ********
******** 3、猴子 ********
******** 4、鹦鹉 ********
******** 5、小丑 ********
5
表演者:Kahle
艺龄:5年
着装:身穿五彩服装,头上戴着彩色的帽子,脸上画着夸张的彩妆
技能:脚踩高跷,进行杂技魔术表演
******** 是否继续观看(0/1) ********
0
******** 欢迎下次光临 ********
2、实现
IACT .java(表演接口)
package com.imooc.model;
//表演接口
public interface IACT {
//技能
public String skill();
//表演
public String act();
}
Animal .java(动物抽象类)
package com.imooc.model;
//动物抽象类
public abstract class Animal {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Animal() {
}
public Animal(String name,int age) {
this.setName(name);
this.setAge(age);
}
//爱好
public abstract String love();
}
Bear.java
package com.imooc.model;
public class Bear extends Animal implements IACT {
public Bear() {
}
public Bear(String name,int age) {
super(name,age);
}
@Override
public String skill() {
// TODO Auto-generated method stub
return "挽着花篮,打着雨伞,独自走秀";
}
@Override
public String love() {
// TODO Auto-generated method stub
return "喜欢卖萌";
}
public String act() {
return "表演者:"+this.getName()+"\n年龄:"+this.getAge()+"岁"+"\n技能:"+this.skill()+"\n爱好:"+this.love();
}
}
Clown.java
package com.imooc.model;
public class Clown implements IACT {
private String name;
private int actAge;
public Clown() {
}
public Clown(String name,int actAge) {
this.setName(name);
this.setActAge(actAge);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getActAge() {
return actAge;
}
public void setActAge(int actAge) {
this.actAge = actAge;
}
public String dress() {
return "身穿五彩服装,头上戴着彩色的帽子,脸上画着夸张的彩妆";
}
@Override
public String skill() {
// TODO Auto-generated method stub
return "脚踩高跷,进行杂技魔术表演";
}
@Override
public String act() {
// TODO Auto-generated method stub
return "表演者:" + this.getName() + "\n艺龄:" + this.getActAge()+"年" + "\n着装:" + this.dress() + "\n技能:" + this.skill();
}
}
Lion .java
package com.imooc.model;
public class Lion extends Animal implements IACT {
private String color;
private String sex;
public Lion() {
}
public Lion(String name,int age,String color,String sex) {
super(name,age);
this.setColor(color);
this.setSex(sex);
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
@Override
public String skill() {
// TODO Auto-generated method stub
return "擅长钻火圈";
}
@Override
public String act() {
// TODO Auto-generated method stub
// this.name();
return "表演者:"+this.getName()+"\n年龄:"+this.getAge()+"岁"+"\n性别:"+this.getSex()+"\n毛色:"+this.getColor()+"\n技能:"+this.skill()+"\n爱好:"+this.love();
}
@Override
public String love() {
// TODO Auto-generated method stub
return "喜欢吃各种肉类";
}
}
Monkey .java
package com.imooc.model;
public class Monkey extends Animal implements IACT {
private String type;
public Monkey() {
}
public Monkey(String name,int age,String type) {
super(name,age);
this.setType(type);
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
@Override
public String skill() {
// TODO Auto-generated method stub
return "骑独轮车过独木桥";
}
@Override
public String act() {
// TODO Auto-generated method stub
return "表演者:"+this.getName()+"\n年龄:"+this.getAge()+"岁"+"\n品种:"+this.getType()+"\n技能:"+this.skill()+"\n爱好:"+this.love();
}
@Override
public String love() {
// TODO Auto-generated method stub
return "喜欢模仿人对的动作表情";
}
}
Parrot.java
package com.imooc.model;
public class Parrot extends Animal implements IACT {
private String type;
public Parrot() {
}
public Parrot(String name,int age,String type) {
super(name,age);
this.setType(type);
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
@Override
public String skill() {
// TODO Auto-generated method stub
return "擅长模仿";
}
@Override
public String act() {
// TODO Auto-generated method stub
return "表演者:"+this.getName()+"\n年龄:"+this.getAge()+"岁"+"\n品种:"+this.getType()+"\n技能:"+this.skill()+"\n爱好:"+this.love();
}
@Override
public String love() {
// TODO Auto-generated method stub
return "喜欢吃坚果和松子";
}
}
Begin.java
package com.imooc.begin;
import java.util.Scanner;
import com.imooc.model.Bear;
import com.imooc.model.Clown;
import com.imooc.model.IACT;
import com.imooc.model.Lion;
import com.imooc.model.Monkey;
import com.imooc.model.Parrot;
public class Begin {
public static void main(String[] args) {
// TODO Auto-generated method stub
UI one = new UI();
one.menu();
}
}
class UI {
public void menu() {
boolean flag = true;
IACT actor = null;
while (flag) {
show();
Scanner sc = new Scanner(System.in);
int input = sc.nextInt();
switch (input) {
case 1:
actor = new Bear("Bill",1);
System.out.println(actor.act());
break;
case 2:
actor = new Lion("Lain",2,"灰色","公狮");
System.out.println(actor.act());
break;
case 3:
actor = new Monkey("Tom",1,"金丝猴");
System.out.println(actor.act());
break;
case 4:
actor = new Parrot("Rose",1,"牡丹鹦鹉");
System.out.println(actor.act());
break;
case 5:
actor = new Clown("Kahle",5);
System.out.println(actor.act());
break;
default:
System.out.println("请输入正确的数字!");
continue;
}
System.out.println("******** 是否继续观看(0/1) ********");
int input2 = sc.nextInt();
switch (input2) {
case 1:
// flag = true;
break;
case 0:
flag = false;
System.out.println("******** 欢迎下次光临 ********");
break;
}
}
}
static void show() {
System.out.println("*********欢迎来到太阳马戏团**********");
System.out.println("******** 请选择表演者 ********");
System.out.println("******** 1、棕熊 ********");
System.out.println("******** 2、狮子 ********");
System.out.println("******** 3、猴子 ********");
System.out.println("******** 4、鹦鹉 ********");
System.out.println("******** 5、小丑 ********");
}
}