代码分析

Cat.java

 package com.ftl.petshop;

 class Cat implements Pet
{
private String name;
private String color;
private int age;
public Cat(String name, String color, int age)
{
this.name = name;
this.color = color;
this.age = age;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getColor()
{
return color;
}
public void setColor(String color)
{
this.color = color;
}
public int getAge()
{
return age;
}
public void setAge(int age)
{
this.age = age;
} }

Dog.java

 package com.ftl.petshop;

 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;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getColor()
{
return color;
}
public void setColor(String color)
{
this.color = color;
}
public int getAge()
{
return age;
}
public void setAge(int age)
{
this.age = age;
} }

Pet.java

 package com.ftl.petshop;

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

PetShop.java

 package com.ftl.petshop;

 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[1];
}
} public boolean add(Pet pet)
{
if (this.foot < this.pets.length)
{
this.pets[foot] = pet;
this.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++;
}
}
}
System.out.println("Sum " + count + "is Right...");
p = new Pet[count];
int f = 0;
for (int i = 0; i < this.pets.length;i++)
{
if(this.pets[i].getName().indexOf(keyWord)!=-1
&& this.pets[i].getColor().indexOf(keyWord)!=-1)
{
p[f] = this.pets[i];
f++;
}
} return p;
} };

PetShopDemo.java

 package com.ftl.petshop;

 public class PetShopDemo
{ public static void main(String[] args)
{
// TODO 自动生成的方法存根
PetShop ps = new PetShop(6);
ps.add(new Cat("W","W",2));
ps.add(new Dog("W","W",2));
ps.add(new Cat("B","B",2));
ps.add(new Cat("B","W",2));
ps.add(new Dog("W","BB",2));
ps.add(new Cat("WW","W",2));
ps.add(new Dog("AW","W",2));
print(ps.search("W"));
}
public static void print(Pet p[])
{
for (int i = 0; i < p.length; i++)
{
if(p[i]!=null)
{
System.out.println("Age "+ p[i].getAge() +" Name:"+ p[i].getColor() +" Color:" + p[i].getName());
}
}
} }

源码下载

点击下载

Java实例---简单的宠物管理系统的更多相关文章

  1. Java实例---简单的上课管理系统

    源码分析 Course.java package com.ftl.many2many; import java.util.*; public class Course { private int cr ...

  2. Java实例---简单的超市管理系统

    代码分析 Customer.java package test; public class Customer { private String name; private int customerTy ...

  3. Java实例---简单的个人管理系统

    代码分析 FileOperate.java package com.ftl.testperson; import java.io.File ; import java.io.FileInputStre ...

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

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

  5. Java实例---简单的数据库操作

    源码分析 DAOFactory.java package cn.ftl.mysql ; public class DAOFactory { public static IEmpDAO getIEmpD ...

  6. Java实例---简单的投票系统

    代码分析  InputData.java package vote; import java.io.BufferedReader; import java.io.IOException; import ...

  7. 主题:Java WebService 简单实例

    链接地址:主题:Java WebService 简单实例    http://www.iteye.com/topic/1135747 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要 ...

  8. Java之从头开始编写简单课程信息管理系统

    编写简单的课程管理系统对于新手并不友好,想要出色的完成并不容易以下是我的一些经验和方法 详情可参考以下链接: https://www.cnblogs.com/dream0-0/p/10090828.h ...

  9. PureMVC和Unity3D的UGUI制作一个简单的员工管理系统实例

    前言: 1.关于PureMVC: MVC框架在很多项目当中拥有广泛的应用,很多时候做项目前人开坑开了一半就消失了,后人为了填补各种的坑就遭殃的不得了.嘛,程序猿大家都不喜欢像文案策划一样组织文字写东西 ...

随机推荐

  1. Idea与Eclipse操作代码的快捷方式

    1.Idea格式化代码的快捷键:ctrl+alt+L 2.在IDEA中创建了properties文件,发现默认中文不会自动进行unicode转码.如下 在project settings - File ...

  2. mysql exceeded the 'max_questions' resource 记录

    最近Hive Meta的  Mysql 常报错 'user' has exceeded the 'max_questions' resource (current value: 10000) 解决:调 ...

  3. 获取 python import模块的路径

    import a_module print a_module.__file__ 上述代码将范围 .pyc 文件被加载的路径,如果需要跨平台解决方案,可用下面代码: import os path = o ...

  4. C#调用SQLite报错:无法加载 DLL“SQLite.Interop.dll”: 找不到指定的模块

    C#调用SQLite数据库,有些情况下会报以下这个错误: 无法加载 DLL“SQLite.Interop.dll”: 找不到指定的模块 实际上程序目录中是存在SQLite.Interop.dll这个文 ...

  5. R语言函数

    函数是一个组织在一起的一组以执行特定任务的语句.R语言有大量的内置函数,用户也可以创建自己的函数. 在R语言中的函数是一个对象,所以R语言解释器为能够通过控制到该函数,带有参数可能是函数必要完成的操作 ...

  6. NSSM - the Non-Sucking Service Manager

    nssm is a service helper which doesn't suck. srvany and other service helper programs suck because t ...

  7. Delphi下OpenGL2d绘图(04)-画四边形

    一.前言 画四边形基本上与前几遍文字代码是相同.区别在于glBegin()的参数“GL_QUADS”.绘制的框架代码可以使用 Delphi下OpenGL2d绘图(01)-初始化 中的代码.修改的部份为 ...

  8. linux目录(转载)

    目录 1.树状目录结构图 2./目录 3./etc/目录 4./usr/目录 5./var/目录 6./proc/目录 7./dev/目录 该文章主要来自于网络进行整理. 目录结构参考地址: http ...

  9. 字符编码unicode,utf-8和ascii

    Ascii编码 由于计算机是美国人发明的,因此,最早只有127个字符被编码到计算机里,也就是大小写英文字母.数字和一些符号,这个编码表被称为ASCII编码,比如大写字母A的编码是65,小写字母z的编码 ...

  10. js-js的语句

    - Java里面的语句: ** if判断 *** =:表示赋值 *** ==:表示判断 ** switch语句 ** 循环 for while do-while - js里面的也是这些语句 ** if ...