已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Annie的宠物小屋里有12个笼子,每个笼子可以放不同的动物,包括猫,狗和蛇, 但同一时刻一个笼子只能放0只或1只宠物,本题要求完成: (1)定义抽象基类Animal,至少包含抽象方法ShowMe; (2)定义派生类Cat,Dog,Snake,具体实现上述抽象方法ShowMe,显示该宠物的种类,名称和喜欢的食物。 (3)定义笼子类,能放0只或1只宠物,可以增加,移除指定笼子中的宠物,查询每个笼子中存放宠物的情况; (4)定义描述宠物小屋的类Shelves,其中包括12个笼子用于存放各种宠物;可统计宠物的种类和数量。 (5)实现一个简单的控制类,测试上述类package com.tian;import java.io.IOException;import java.util.Scanner;public class Test2 public static void main(String args) throws IOException System.out.println(请先让我做下自我介绍:);Cat cat=new Cat();cat.showMe();Dog dog=new Dog();dog.showMe();Snake snake=new Snake();snake.showMe();System.out.println(-我是分割线-);System.out.println(请先将宠物让入笼子里面);Cage cage=new Cage();/调用宠物进笼方法cage.join();boolean onEnd=true; /结束标志/选择添加还是移除while(onEnd) /让该循环一直为真,便于操作(后面有结束语句)System.out.println(添加按(y),移除按(n),查看种类以及数量(m),按其他键则直接退出);char c1=(char)System.in.read();if(c1=y)cage.join();else if(c1=n)cage.move();else if(c1=m)/当进行查询各个种类的数量时,该循环就结束了(不足之处,你自己改进下)System.out.println(在笼子中猫的数量为:+Cage.c+t狗的数量为:+Cage.d+t蛇的数量为:+Cage.s);elseSystem.out.println(谢谢使用!);break; /直接结束循环/抽象类Animalabstract class AnimalString kinds;String name;String foods;abstract void showMe();/Cat类class Cat extends Animalpublic void showMe() System.out.println(我是猫类,我的名字叫小花,我喜欢吃鱼。);/狗类class Dog extends Animalvoid showMe() System.out.println(我是狗类,我的名字叫小黄,我喜欢吃肉。);/蛇类class Snake extends Animalvoid showMe() System.out.println(我是蛇类,我的名字叫小k,我喜欢吃老鼠。);/笼子类class Cagestatic String cg=new String100; /设置静态一个字符串数组cg,用来记录宠物的种类static String name=new String100; /设置静态变量name,用来记录各种宠物名字static int pd=new int100;/设置一个静态数组pd,来确定笼子中是否有宠物,并初始化为0(0:表示没有;1:表示有)static int c=0;/静态变量c用来记录猫类在笼子里面的数量static int d=0;/静态变量d用来记录狗类在笼子里面的数量static int s=0;/静态变量s用来记录蛇类在笼子里面的数量/宠物进笼的方法public void join()System.out.println(请选择你要放进笼子的宠物类别:);System.out.println(1.猫);System.out.println(2.狗);System.out.println(3.蛇);Scanner input=new Scanner(System.in);/请输入数字,不然会有异常(这里没抛异常)int i=input.nextInt();if(i3)System.out.println(输入有误,请重新输入);Cage cage=new Cage();cage.join();System.out.println(请选择笼子的编号:);int j=input.nextInt();System.out.println(请输入宠物的名字:);String inname=input.next(); /输入宠物名字的时候,字与字之间不要有空格,不然空格后面的字无法获取switch (i) case 1:/先判断该笼子中是否有宠物,没有的话才能放入宠物,否则请重新选择新的笼子if(pdj=1)System.out.println(有宠物在该笼子,请重新选择:);Cage cage=new Cage();cage.join();elsepdj=1;/将数组中下标为j的值设置为1,表示宠物进入该笼子cgj=猫;/记录进入该笼子宠物的种类,便于以后添加或移除宠物是统计每个宠物种类的数量namej=inname; /设置宠物的名字c+;System.out.println(cgj+:+namej+进入第+j+个笼子);break;case 2:if(pdj=1)System.out.println(有宠物在该笼子,请重新选择:);Cage cage=new Cage();cage.join();elsepdj=1;cgj=狗;namej=inname;d+;System.out.println(cgj+:+namej+进入第+j+个笼子);break;default:if(pdj=1)System.out.println(有宠物在该笼子,请重新选择:);Cage cage=new Cage();cage.join();elsepdj=1;cgj=蛇;namej=inname;s+;System.out.println(cgj+:+namej+进入第+j+个笼子);break;/宠物出笼的方法public void move()System.out.println(请选择要移除哪个笼子中的宠物);Scanner input=new Scanner(System.in);int k=input.nextInt();/首先进行判断,看你要移除宠物的笼子中是否有宠物,有的话就可以,不然就重新选择别的笼子if(pdk=0)Sys
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年抚州市临川区公务员人员招聘笔试模拟试题与答案详解
- 某钢铁厂技术创新办法
- 2026嘉兴大学继续教育学院招聘非编工作人员考试备考题库及答案解析
- 2027北京邮电大学事业编制专职辅导员岗位招聘20人笔试参考题库及答案解析
- 2026黑龙江哈尔滨医科大学诚挚招募海内外高层次人才笔试参考题库及答案解析
- 2026年气相防锈膜行业洞察报告及未来五至十年发展趋势报告
- 2026年特种设备行业洞察报告及未来五至十年发展趋势报告
- 2026武义壶山供销有限公司招聘1人考试备考试题及答案解析
- 2026年昆明市官渡区公务员人员招聘考试参考题库与答案详解
- 2026湖北恩施市医疗保障局招聘公益性岗位人员1人考试参考题库及答案解析
- 核心素养导向下小学六年级数学“百分数的意义”跨学科项目式教学设计
- 项目管理人员安全培训课件
- 规培学员出科考核制度
- 余额宝相关课件
- T-TFZX 59-2025 医疗机构医德医风考评指标体系指南
- 《普通高中英语课程标准(2025年版)》带星号词汇详解表清单-高三英语一轮复习专项
- 非标自动化项目管理
- 专题全等三角形压轴题(30题)(原卷版+解析)
- 2025年-集团公司投资管理办法
- 智驭未来:AI工具辅助高效学习与科研(天津师范大学)学习通网课章节测试答案
- 2025年医学生物化学基础知识综合测试卷答案及解析
评论
0/150
提交评论