资源预览内容
第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
第9页 / 共10页
第10页 / 共10页
亲,该文档总共10页全部预览完了,如果喜欢就下载吧!
资源描述
MLDN 软件教学研件教学研发部部JAVA 应用开发详解应用开发详解面向对象(高级) 实例分析:宠物商店实例要求实现一个宠物商店,在宠物商店中可以有多种(由用户决定数量)宠物,试表示出此种关系,并要求可以根据宠物的关键字查找到相应的宠物信息。所需要的宠物信息自行设计。分析1、 本要求中提示宠物的信息可以自行设计,所以此时简单设计出三个属性:名字、颜色、年龄。2、 宠物的类别很多,例如:猫、狗等都属于宠物,所以宠物应该是一个标准。3、 在宠物商店中,只要是符合了此宠物标准的就都应该可以放进宠物商店之中。4、 宠物商店中要保存多种宠物,则肯定应该是一个宠物的对象数组,宠物的个数由用户决定的话,则应该在创建宠物商店的时候,就已经分配好宠物的个数。类图宠物接口 Pet.java interface Pet public String getName();/ 得到宠物的名字public String getColor();/ 得到宠物的颜色public int getAge();/ 得到宠物的年龄宠物猫 Cat.java class Cat implements Pet private String name;/ 宠物名字private String color;/ 宠物颜色private int age;/ 宠物年龄public Cat(String name, String color, int age) / 通过构造设置属性this.setName(name) ;this.setColor(color) ;this.setAge(age) ;/ setter、getter;宠物狗 Dog.java class Dog implements Pet private String name;/ 宠物名字private String color;/ 宠物颜色private int age;/ 宠物年龄public Dog(String name, String color, int age) / 通过构造设置属性this.name = name;this.color = color;this.age = age;/ setter、getter;宠物商店 PetShop.java(增加宠物) class PetShop private Pet pets;/ 保存多个属性private int foot;/ 数据的保存位置public PetShop(int len) / 构造方法开辟宠物数组的大小if(len0)/ 判断长度是否大于0this.pets = new Petlen;/ 为对象数组开辟空间elsethis.pets = new Petlen ;/ 至少开辟一个空间public boolean add(Pet pet) / 增加宠物if (foot this.pets.length) / 判断宠物商店里的宠物是否已经满了this.petsfoot = pet;/ 增加宠物foot+;/ 修改保存位置return true;/ 增加成功 else return false;/ 增加失败;宠物商店 PetShop.java(查询) class PetShop public Pet search(String keyWord) / 关键字查找Pet p = null;/ 此为查找之后的结果,此处的大小不是固定的int count = 0;/ 记录下多少个宠物符合查询结果/ 确认开辟的空间大小,看有多少个宠物符合查询条件for (int i = 0; i this.pets.length; i+) if (this.petsi != null) /判断对象数组中的内容是否为空if (this.petsi.getName().indexOf(keyWord) != -1| this.petsi.getColor().indexOf(keyWord) != -1) count+;/ 统计符合条件的宠物个数p = new Petcount;/ 根据已经确定的记录数,开辟对象数组int f = 0;/ 设置增加的位置标记for (int i = 0; i this.pets.length; i+) if (this.petsi != null) if (this.petsi.getName().indexOf(keyWord) != -1| this.petsi.getColor().indexOf(keyWord) != -1) pf = this.petsi; / 将符合查询条件的宠物信息保存f+;return p;测试宠物商店 PetShopDemo.java public class PetShopDemo public static void main(String args) PetShop ps = new PetShop(5);/ 五个宠物ps.add(new Cat(白猫, 白色的, 2);/ 增加宠物,成功ps.add(new Cat(黑猫, 黑色的, 3);/ 增加宠物,成功ps.add(new Cat(花猫, 花色的, 3);/ 增加宠物,成功ps.add(new Dog(拉布拉多, 黄色的, 3);/ 增加宠物,成功ps.add(new Dog(“金毛”, “金色的, 3);/ 增加宠物,成功ps.add(new Dog(黄狗, 黑色的, 3);/ 增加宠物,失败print(ps.search(黑);public static void print(Pet p) / 输出操作for (int i = 0; i p.length; i+) / 循环输出if (pi != null) System.out.println(pi.getName() + , + pi.getColor() + ,+ pi.getAge();
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号