创建包名:com.cricus.animal
包含以下类Animal、Bear、Clown、IAct、Lion、Monkey、Parrot*
创建抽象类Animal
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 abstract void love();
}
创建接口IAct类
//抽象方法:表演和技能
public abstract void act();
public abstract void skill();
创建Bear类
public class Bear extends Animal implements IAct {
//通过构造函数设定名字和年龄
public Bear() {
// TODO 自动生成的构造函数存根
setName("Bill");
setAge(1);
}
@Override
//爱好
public void love() {
// TODO 自动生成的方法存根
System.out.println("爱好:喜欢卖萌");
}
@Override
//输出表演信息
public void act() {
// TODO 自动生成的方法存根
System.out.println("表演者:"+getName());
System.out.println("年龄:"+getAge()+"岁");
this.skill();
this.love();
this.act();
}
@Override
//技能
public void skill() {
// TODO 自动生成的方法存根
System.out.println("技能:挽着花篮,打着雨伞,自立走秀");
}
}
创建Lion类
public class Lion extends Animal implements IAct{
private String Color;//毛色
private String Sex;//性别
//获取毛色
public String getColor() {
return Color;
}
//设定毛色
public void setColor(String color) {
Color = color;
}
//获取性别
public String getSex() {
return Sex;
}
//设定性别
public void setSex(String sex) {
Sex = sex;
}
//构造函数设定信息
public Lion() {
// TODO 自动生成的构造函数存根
setName("Laion");
setAge(2);
setColor("灰色");
setSex("公狮");
this.act();
}
//爱好
@Override
public void love() {
// TODO 自动生成的方法存根
System.out.println("爱好:喜欢吃各种肉类");
}
//输出表演信息
@Override
public void act() {
// TODO 自动生成的方法存根
System.out.println("表演者:"+getName());
System.out.println("年龄:"+getAge()+"岁");
System.out.println("毛色:"+getColor());
System.out.println("性别:"+getSex());
this.skill();
this.love();
}
//技能
@Override
public void skill() {
// TODO 自动生成的方法存根
System.out.println("技能:擅长钻火圈");
}
}
创建Monkey
public class Monkey extends Animal implements IAct{
private String Type;//品种
//构造函数设定信息
public Monkey() {
// TODO 自动生成的构造函数存根
setName("Tom");
setAge(1);
setType("金丝猴");
this.act();
}
//获取品种
public String getType() {
return Type;
}
//设定品种
public void setType(String Type) {
this.Type = Type;
}
//爱好
@Override
public void love() {
// TODO 自动生成的方法存根
System.out.println("爱好:喜欢模仿人的动作表情");
}
//输出表演信息
@Override
public void act() {
// TODO 自动生成的方法存根
System.out.println("表演者:"+getName());
System.out.println("年龄:"+getAge()+"岁");
System.out.println("品种:"+getType());
this.skill();
this.love();
}
//技能
@Override
public void skill() {
// TODO 自动生成的方法存根
System.out.println("技能:骑独轮车过独木桥");
}
}
创建Parrot类
public class Parrot extends Animal implements IAct {
private String type;//设定品种
//获取品种
public String getType() {
return type;
}
//设定品种
public void setType(String type) {
this.type = type;
}
//构造函数设定信息
public Parrot() {
// TODO 自动生成的构造函数存根
setName("Rose");
setAge(1);
setType("牡丹鹦鹉");
this.act();
}
//爱好
@Override
public void love() {
// TODO 自动生成的方法存根
System.out.println("爱好:喜欢吃坚果和松子");
}
//演员
@Override
public void act() {
// TODO 自动生成的方法存根
System.out.println("表演者:"+getName());
System.out.println("年龄:"+getAge()+"岁");
System.out.println("品种:"+getType());
this.skill();
this.love();
}
//技能
@Override
public void skill() {
// TODO 自动生成的方法存根
System.out.println("技能:擅长模仿");
}
}
创建Clown类
public class Clown implements IAct {
private String Name;
private int years;
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public int getYears() {
return years;
}
public void setYears(int years) {
this.years = years;
}
public Clown() {
// TODO 自动生成的构造函数存根
setName("Kahle");
setYears(5);;
this.act();
}
@Override
public void act() {
// TODO 自动生成的方法存根
System.out.println("表演者:"+getName());
System.out.println("艺龄:"+getYears()+"年");
this.dress();
this.skill();
}
@Override
public void skill() {
// TODO 自动生成的方法存根
System.out.println("技能:脚踩高跷,进行杂技魔术表演");
}
public void dress() {
System.out.println("着装:身穿五彩服装,头上戴这彩色的帽子,脸上画着夸张的彩状");
}
}
创建测试包:com.cricus.test
创建测试类:Cricustest
Cricustest:
import java.util.Scanner;
import com.cricus.animal.Bear;
import com.cricus.animal.Clown;
import com.cricus.animal.Lion;
import com.cricus.animal.Monkey;
import com.cricus.animal.Parrot;
public class Cricustest {
public static void main(String[] args) {
/**
* 实例化CricusUi成员类,运行动物园菜单
*/
Cricustest.CricusUi cricusUi= new Cricustest().new CricusUi();
}
public class CricusUi {
public CricusUi() {
// TODO 自动生成的构造函数存根
Boolean flag=true;
while(flag) {
System.out.println("*************欢迎来到太阳马戏团************");
System.out.println("************* 1、棕熊 ************");
System.out.println("************* 2、狮子 ************");
System.out.println("************* 3、猴子 ************");
System.out.println("************* 4、鹦鹉 ************");
System.out.println("************* 5、小丑 ************");
Scanner sc = new Scanner(System.in); //声明输入
System.out.print("请输入数字选择表演者:");
int temp=sc.nextInt();
switch(temp)
{
case 1: Bear bear = new Bear(); //棕熊
break;
case 2: Lion lion = new Lion(); //狮子
break;
case 3: Monkey monkey = new Monkey(); //猴子
break;
case 4: Parrot parrot = new Parrot(); //鹦鹉
break;
case 5: Clown clown = new Clown(); //小丑
break;
default:System.out.println("没有该数字的表演者,请重新选择!!!");
break;
}
/**
* 判断是否继续看,检测非法输入数据
*/
Boolean flag2 = true;
while(flag2) {
System.out.println("************* 是否继续观看(1/0) ************");
System.out.print("请输入数字(1/0):");
temp=sc.nextInt();
if(temp==1)
{
flag =true;
break;
}
else if(temp==0)
{
flag =false;
System.out.println("************* 欢迎下次光临 ************");
break;
}
else
{
System.out.println("************* 输入信息不正确 ************");
}
}
}
}
}
}