Pet.java

interface Pet
{
public String getName();
public String getColor();
public int getAge();
public float getPrice();
}

Cat.java

class Cat implements Pet
{
private String name;
private String color;
private int age;
private float price;
public Cat(String name,String color,int age,float price){
this.name = name;
this.color = color;
this.age = age;
this.price = price;
}

public void setName(String name){
this.name=name;
}
public void setColor(String name){
this.color=color;
}
public void setAge(int age){
this.age=age;
}
public void setPrice(float price){
this.price=price;
}

public String getName(){
return this.name;
}
public String getColor(){
return this.color;
}
public int getAge(){
return this.age;
}
public float getPrice(){
return this.price;
}
}

Dog.java

class Dog implements Pet
{
private String name;
private String color;
private int age;
private float price;
public Dog(String name,String color,int age,float price){
this.name = name;
this.color = color;
this.age = age;
this.price = price;
}

public void setName(String name){
this.name=name;
}
public void setColor(String name){
this.color=color;
}
public void setAge(int age){
this.age=age;
}
public void setPrice(float price){
this.price=price;
}
public String getName(){
return this.name;
}
public String getColor(){
return this.color;
}
public int getAge(){
return this.age;
}
public float getPrice(){
return this.price;
}
}

PetShop.java

class PetShop
{
private Pet[] pets;
private int foot;
public PetShop(int len){
if(len>0){
this.pets = new Pet[len];
}else{
this.pets = new Pet[l];
}
}

public boolean add(Pet pet){
if(foot < this.pets.length){
this.pets[foot] = pet;
foot++;
return true;
}else{
return false;
}
}

public Pet[] search(String keyWord){
Pet p[] = null;
int count = 0;

for(int i=0;i<this.pets.length;i++){
if(this.pets[i] != null){
if(this.pets[i].getName().indexOf(keyWord) !=-1 || this.pets[i].getColor().indexOf(keyWord) !=-1){
count++;
}
}
}
p = new Pet[count];
int f = 0;
for(int i=0;i<this.pets.length;i++){
if(this.pets[i] != null){
if(this.pets[i].getName().indexOf(keyWord) !=-1 || this.pets[i].getColor().indexOf(keyWord) !=-1){
p[f] = this.pets[i];
f++;
}
}
}
return p;
}
}

TestPetShop.java

public class PetShopDemo
{
public static void main(String[] args)
{
PetShop ps = new PetShop(8);
ps.add(new Cat("白猫","黑色",1,23.5f));
ps.add(new Cat("黑猫","黑色",2,23.5f));
ps.add(new Cat("白猫","黑色",3,23.5f));
ps.add(new Dog("白狗","黑色",1,23.5f));
ps.add(new Dog("黑狗","黑色",2,23.5f));
ps.add(new Dog("白狗","黑色",3,23.5f));
Print(ps.search("黑"));

}

public static void Print(Pet p[]){
for (int i= 0; i<p.length; i++){
if (p[i] != null)
{
System.out.println(p[i].getName()+", "+p[i].getColor()+", "+p[i].getAge()+", "+p[i].getPrice());
}
}
}
}

java 宠物商店代码的更多相关文章

  1. Java实验项目三——宠物商店

    Program:宠物商店的设计(继承,接口,线性线性表) Description:本题未实现图形用户界面,项目结构描述如下: classes.Pet:定义宠物接口,只要实现该接口的宠物类,都可存储进宠 ...

  2. Java实例分析:宠物商店

    设计一个“宠物商店”,在宠物商店中可以有多种宠物,试表示出此种关系,并要求可以根据宠物的关键字查找相应的宠物信息. //======================================== ...

  3. 吴裕雄--天生自然JAVA面向对象高级编程学习笔记:宠物商店实例分析

    interface Pet{ // 定义宠物接口 public String getName() ; public String getColor() ; public int getAge() ; ...

  4. 从.NET的宠物商店到Android MVC MVP

    1 一些闲话 记得刚进公司的时候,我们除了做常规的Training Project外,每天还要上课,接受各种技术培训和公司业务介绍.当时第一次知道QA和SQA的区别.Training Project时 ...

  5. Microsoft-PetSop4.0(宠物商店)-数据库设计-Oracle

    ylbtech-DatabaseDesgin:Microsoft-PetSop4.0(宠物商店)-数据库设计-Oracle DatabaseName:PetShop(宠物商店) Model:宠物商店网 ...

  6. 正则表达式学习笔记(附:Java版示例代码)

    具体学习推荐:正则表达式30分钟入门教程 .         除换行符以外的任意字符\w      word,正常字符,可以当做变量名的,字母.数字.下划线.汉字\s        space,空白符 ...

  7. java俄罗斯方块游戏代码

    java俄罗斯方块游戏代码: package com; import java.awt.Color; import java.awt.Graphics; import java.awt.event.K ...

  8. java常用用代码

    /** *Java获取IP代码 */ import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.ev ...

  9. java学用代码

    /** *Java获取IP代码 */ import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.ev ...

随机推荐

  1. python input() 与 raw_input()

    使用input和raw_input都可以读取控制台的输入,但是input和raw_input在处理数字时是有区别的 当输入为纯数字时: input返回的是数值类型,如int,floatraw_inpo ...

  2. html之块级标签h系列,div

    两个名词含义: 块级标签:内容再少也会占满整行 内联标签:有多少内容点多少地方 注:块级标签和内联不签不是绝对的,可以通过CSS作任意转换 1.h1-h6 :块级标签 请仅仅把标题标签用作标题文本,如 ...

  3. nginx linux 下开机自动启动

    这里使用的是编写shell脚本的方式来处理 vi /etc/init.d/nginx  (输入下面的代码) #!/bin/bash# nginx Startup script for the Ngin ...

  4. du命令 实现Linux 某个文件夹下的文件按大小排序

    1. df -lh 2. du -s /usr/* | sort -rn这是按字节排序 3. du -sh /usr/* | sort -rn这是按兆(M)来排序 4.选出排在前面的10个du -s ...

  5. Javac命令一次编译一个目录下的所有java文件

    将生成的class文件所部按package路径输出到classes目录当中: javac -d .\classes src\*.java

  6. Python(正则 Time datatime os sys random json pickle模块)

    正则表达式: import re #导入模块名 p = re.compile(-]代表匹配0至9的任意一个数字, 所以这里的意思是对传进来的字符串进行匹配,如果这个字符串的开头第一个字符是数字,就代表 ...

  7. bzoj4637: 期望

    Description 在米国有一所大学,名叫万国歌剧与信息大学(UniversalOperaandInformaticasUniversity).简称UOI大学.UO I大学的建筑与道路分布很有趣, ...

  8. bzoj4716 假摔

    Description [题目背景] 小Q最近喜欢上了一款游戏,名为<舰队connection>,在游戏中,小Q指挥强大的舰队南征北战,从而成为了一名 dalao.在游戏关卡的攻略中,可能 ...

  9. PHP header函数大全

    PHP header函数大全 header('Content-Type: text/html; charset=utf-8'); header('Location: http://www.php-no ...

  10. Python try/except异常处理机制

    1. use try, except, finally try: data=open('its.txt','w') print('its..', file=data) except: print('f ...