现在要求建立宠物商店,里面就有进行要销售宠物的上架,下架,关键字查询。
要求:描述出程序的关系即可
那么假设对于宠物的信息只要求有三项:名字,年龄,颜色
1.创建链表
2.建立宠物标准
//定义宠物interfacePet{publicStringgetName();publicStringgetColor();publicintgetAge();}
/***@authorGu*@cracked2020-03-259:10*/publicclassPetShop{privateLinkImplpets=newLinkImpl();//开辟一个链表,保存多个宠物publicvoidadd(Petpet){//上架上的宠物,this.pets.add(pet);}publicvoiddelete(Petpet){this.pets.remove(pet);}publicLinkImplgetPets(){//取得全部宠物returnthis.pets;}publicLinkImplsearch(StringkeyWord){LinkImplresult=newLinkImpl();//保存查询结果Object[]data=this.pets.toArray();for(intx=0;x 4.定义宠物狗: publicclassDogimplementsPet{privateStringname;privateintage;privateStringcolor;publicDog(Stringname,intage,Stringcolor){this.name=name;this.age=age;this.color=color;}publicStringgetName(){returnthis.name;}publicintgetAge(){returnthis.age;}publicStringgetColor(){returnthis.color;}publicbooleanequals(Objectobj){if(obj==null){returnfalse;}if(this==obj){returntrue;}if(!(objinstanceofDog)){returnfalse;}Dogpet=(Dog)obj;returnthis.name.equals(pet.name)&&this.age==pet.age&&this.color.equals(pet.color);}publicStringtoString(){return"【狗】名字:"+this.name+",年龄:"+this.age+",颜色:"+this.color;}} 5.定义宠物猫 publicclassCatimplementsPet{privateStringname;privateintage;privateStringcolor;publicCat(Stringname,intage,Stringcolor){this.name=name;this.age=age;this.color=color;}publicStringgetName(){returnthis.name;}publicintgetAge(){returnthis.age;}publicStringgetColor(){returnthis.color;}publicbooleanequals(Objectobj){if(obj==null){returnfalse;}if(this==obj){returntrue;}if(!(objinstanceofCat)){returnfalse;}Catpet=(Cat)obj;returnthis.name.equals(pet.name)&&this.age==pet.age&&this.color.equals(pet.color);}publicStringtoString(){return"【猫】名字:"+this.name+",年龄:"+this.age+",颜色:"+this.color;}} 6.编写测试程序 publicclassMainTest{publicstaticvoidmain(String[]args){PetShopps=newPetShop();//添加宠物ps.add(newDog("黑狗",1,"黑色"));ps.add(newDog("金毛",2,"黄色"));ps.add(newDog("腊肠",1,"金色"));ps.add(newDog("拉布拉多",1,"金色"));ps.add(newCat("加菲猫",1,"金色"));ps.add(newCat("波斯猫",1,"白色"));//删除宠物ps.delete(newDog("腊肠",1,"金色"));LinkImplall=ps.search("金");Object[]data=all.toArray();for(intx=0;x