Java小练习--马戏团节目管理系统开发

运用Java基础语法、面向对象的知识,完成马戏团节目管理系统开发。


一、任务描述


一、语言和环境

  • ·实现语言
  • Java语言
  • 环境要求及开发工具JDK、Eclipse

二、程序整体要求

  1. 划分功能模块,根据题目要求设置不同的类,在类中实现相应功能的管理。
  2. 类的标识要清楚易懂,代码结构要层次分明,代码编辑思路要清晰、整洁。
  3. 要求Java代码书写、命名符合规范,属性所属数据类型要准确合理,在代码中添加必要的注释
  4. 程序运行效果参考效果图要求,文字大小、颜色也不做统一要求
  5. 结合演示效果,完成需求分析中的所有内容

三、需求分析:
1.整个项目由三个环节组成:

  • 表演菜单展示
  • 选择表演者进行表演
  • 选择是否继续观看表演

2.使用面向对象思想编程

  • 对封装、继承和多态的使用
  • 注意编码规范
  • 注意循环的使用

四、详细设计:
1.抽象父类:
-动物(Animal)

  • 属性:昵称(name) 、年龄(age)
  • 抽象方法:描述喜好(love)

2接口
-表演(IAct)

  • 抽象方法:描述技能(skill) 、描述表演(act)
  • 说明:每个表演者的表演信息是通过调用act()方法输出的

3.实现类

-棕熊(Bear)

  • 继承自Animal实现IAct

-狮子(Lion)

  • 继承自Animal实现IAct
  • 新增属性:颜色(color) 、性别(sex)

-猴子(Monkey)

  • 继承自Animal实现IAct
  • 新增属性:品种(type)

-鹦鹉(Parrot)

  • 继承自Animal实现IAct
  • 新增属性:品种(type)

-小丑(Clown)

  • 实现IAct
  • 属性:名字(name) 、艺龄(years)

二、代码实现

IAct.java

public interface IAct {
	// 抽象方法:描述技能、描述表演
	public abstract void skill();

	public abstract void act();
}

Bear.java

//继承来自Animal实现IAct
public class Bear extends Animal implements IAct {

	@Override
	public void skill() {
		// TODO Auto-generated method stub
		System.out.println("技能:挽着花篮,打着雨伞,自立走秀");

	}

	@Override
	public void act() {
		// TODO Auto-generated method stub

	}

	@Override
	public void love() {
		// TODO Auto-generated method stub
		System.out.println("爱好:喜欢卖萌");

	}

}

Lion.java

//继承来自Animal实现IAct
public class Bear extends Animal implements IAct {

	@Override
	public void skill() {
		// TODO Auto-generated method stub
		System.out.println("技能:挽着花篮,打着雨伞,自立走秀");

	}

	@Override
	public void act() {
		// TODO Auto-generated method stub

	}

	@Override
	public void love() {
		// TODO Auto-generated method stub
		System.out.println("爱好:喜欢卖萌");

	}

}

Monkey.java

public class Monkey extends Animal implements IAct {
	// 新增属性:品种
	private String type;

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	@Override
	public void skill() {
		// TODO Auto-generated method stub
		System.out.println("技能:骑独轮车过独木桥");
	}

	@Override
	public void act() {
		// TODO Auto-generated method stub

	}

	@Override
	public void love() {
		// TODO Auto-generated method stub
		System.out.println("爱好:喜欢模仿人的动作表情");

	}

}

Parrot.java

public class Parrot extends Animal implements IAct {
	// 新增属性:品种
	private String type;

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	@Override
	public void skill() {
		// TODO Auto-generated method stub

	}

	@Override
	public void act() {
		// TODO Auto-generated method stub

	}

	@Override
	public void love() {
		// TODO Auto-generated method stub

	}

}

Clown.java

public class Clown implements IAct {
	// 属性:名字、艺龄
	private String name;
	private int years;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getYears() {
		return years;
	}

	public void setYears(int years) {
		this.years = years;
	}

	@Override
	public void skill() {
		// TODO Auto-generated method stub
		System.out.println("技能:脚踩高跷,进行杂技魔术表演");
	}

	@Override
	public void act() {
		// TODO Auto-generated method stub

	}

	// 着装方法
	public void dress() {
		System.out.println("着装:身穿五彩服装,头上戴着彩色的帽子,脸上画着夸张的彩妆");
	}
}

Test.java

import java.util.Scanner;

import pers.st.circusmanage.model.Bear;
import pers.st.circusmanage.model.Clown;
import pers.st.circusmanage.model.Lion;
import pers.st.circusmanage.model.Monkey;
import pers.st.circusmanage.model.Parrot;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int temp;
		// 从键盘接收数据
		Scanner sc = new Scanner(System.in);
		do {
			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、小丑                      ********");
			temp = sc.nextInt();
			if (temp == 1) {
				Bear bear = new Bear();
				bear.setAge(1);
				bear.setName("Bill");
				System.out.println("表演者:" + bear.getName());
				System.out.println("年龄:" + bear.getAge());
				bear.skill();
				bear.love();
				System.out.println();
				System.out.println("****是否继续观看(1/0)****");

				while (true) {
					temp = sc.nextInt();
					if (temp == 0) {
						System.out.println("****    欢迎下次光临    ****");
						break;// 跳出while(true)循环,temp=0跳出do=while循环
					} else if (temp == 1) {
						break;// 跳出 while(true)循环
					} else if (temp != 0 && temp != 1) {
						System.out.println("** 输出信息不正确,请重新输入 **");
						System.out.println("****是否继续观看(1/0)****");
					}
				}
			} else if (temp == 2) {
				Lion lion = new Lion();
				lion.setAge(2);
				lion.setName("Lain");
				lion.setColor("灰色");
				lion.setSex("公狮");

				System.out.println("表演者:" + lion.getName());
				System.out.println("年龄:" + lion.getAge());
				System.out.println("性别:" + lion.getSex());
				System.out.println("毛色:" + lion.getColor());
				lion.skill();
				lion.love();
				System.out.println();
				System.out.println("****是否继续观看(1/0)****");

				while (true) {
					temp = sc.nextInt();
					if (temp == 0) {
						System.out.println("****    欢迎下次光临    ****");
						break;// 跳出while(true)循环,temp=0跳出do=while循环
					} else if (temp == 1) {
						break;// 跳出 while(true)循环
					} else if (temp != 0 && temp != 1) {
						System.out.println("** 输出信息不正确,请重新输入 **");
						System.out.println("****是否继续观看(1/0)****");
					}
				}
			} else if (temp == 3) {
				Monkey monkey = new Monkey();
				monkey.setName("Tom");
				monkey.setAge(1);
				monkey.setType("金丝猴");
				System.out.println("表演者" + monkey.getName());
				System.out.println("年龄:" + monkey.getAge() + "岁");
				System.out.println("品种:" + monkey.getType());
				monkey.skill();
				monkey.love();
				System.out.println();
				System.out.println("****是否继续观看(1/0)****");

				while (true) {
					temp = sc.nextInt();
					if (temp == 0) {
						System.out.println("****    欢迎下次光临    ****");
						break;// 跳出while(true)循环,temp=0跳出do=while循环
					} else if (temp == 1) {
						break;// 跳出 while(true)循环
					} else if (temp != 0 && temp != 1) {
						System.out.println("** 输出信息不正确,请重新输入 **");
						System.out.println("****是否继续观看(1/0)****");
					}
				}
			} else if (temp == 4) {
				Parrot par = new Parrot();
				par.setName("Rose");
				par.setAge(1);
				par.setType("鹦鹉");
				System.out.println("表演者:" + par.getName());
				System.out.println("年龄:" + par.getAge() + "岁");
				System.out.println("品种:" + par.getType());
				par.skill();
				par.love();
				System.out.println();
				System.out.println("****是否继续观看(1/0)****");

				while (true) {
					temp = sc.nextInt();
					if (temp == 0) {
						System.out.println("****    欢迎下次光临    ****");
						break;// 跳出while(true)循环,temp=0跳出do=while循环
					} else if (temp == 1) {
						break;// 跳出 while(true)循环
					} else if (temp != 0 && temp != 1) {
						System.out.println("** 输出信息不正确,请重新输入 **");
						System.out.println("****是否继续观看(1/0)****");
					}
				}
			} else if (temp == 5) {
				Clown clo = new Clown();
				clo.setName("Kahle");
				clo.setYears(5);
				System.out.println("表演者:" + clo.getName());
				System.out.println("艺龄:" + clo.getYears() + "年");
				clo.dress();
				clo.skill();
				System.out.println();
				System.out.println("****是否继续观看(1/0)****");

				while (true) {
					temp = sc.nextInt();
					if (temp == 0) {
						System.out.println("****    欢迎下次光临    ****");
						break;// 跳出while(true)循环,temp=0跳出do=while循环
					} else if (temp == 1) {
						break;// 跳出 while(true)循环
					} else if (temp != 0 && temp != 1) {
						System.out.println("** 输出信息不正确,请重新输入 **");
						System.out.println("****  是否继续观看(1/0)****");
					}
				}
			}else if(temp>5) {
				System.out.println("** 输出信息不正确,请重新输入 **");
			}

		} while (temp != 0);
	}

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值