Java第七次作业

interface Pet{
        public String getName() ;
    public String getColor() ;
    public int getAge() ;
}
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) ;
    }
    public void setName(String name){
        this.name = name ;
    }
    public void setColor(String color){
        this.color = color;
    }
    public void setAge(int age){
        this.age = age ;
    }
    public String getName(){
        return this.name ;
    }
    public String getColor(){
        return this.color ;
    }
    public int getAge(){
        return this.age ;
    }
};
class Dog implements Pet{
    private String name ;
    private String color ;
    private int age ;
    public Dog(String name,String color,int age){
        this.setName(name) ;
        this.setColor(color) ;
        this.setAge(age) ;
    }
    public void setName(String name){
        this.name = name ;
    }
    public void setColor(String color){
        this.color = color;
    }
    public void setAge(int age){
        this.age = age ;
    }
    public String getName(){
        return this.name ;
    }
    public String getColor(){
        return this.color ;
    }
    public int getAge(){
        return this.age ;
    }
};
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[this.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++ ;
                }
            }
        }
        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 ;

    }
};
public class HomeworkDemo{
    public static void main(String args[]){
        PetShop ps = new PetShop(5) ;
        ps.add(new Cat("英短","灰色的",5));
        ps.add(new Cat("布偶猫","白色的",2));
        ps.add(new Cat("花猫","花色的",6));
        ps.add(new Dog("哈士奇犬","黑白色的",2));
        ps.add(new Dog("金毛犬","金色的",1));
        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());
            }
        }
    }
};

时间: 2024-11-10 14:40:12

Java第七次作业的相关文章

OO第五到七次作业小结

一.写在前面: 经过了前三次作业的试水,在第二阶段的三次作业中,因为多线程的引入,面向对象课程进入了需要摸着石头过河的"深水期".犹记第五次作业发布恰逢清明假期,助教学姐语重心长地在通知板提示同学们早点开始,毕竟此次作业"拿下过往届很多同学的oo课程通宵首杀".经过我的"实际体验",多线程电梯的搭建过程实属不易.之后的IFTTT,再到出租车调度系统,都是基于多线程的进一步应用.攻克多线程设计的这个过程中的艰辛自然不必多说,相信每个同学都有着深刻的

JAVA 笔记 七

JAVA笔记七 this:就代表本类的对象,this代表它所在函数所属对象的引用简单说:那个对象在调用this所在的函数,this就代表那个对象静态:static 用法:是一个修饰符,用于修饰成员(成员变量,成员函数)当成员被静态修饰后,就多了一个调用方式,除了可以被对象调用外,还可以直接被类名调用.类名.静态成员static特点1.随着类的加载而加载2.优先于的对象存在3.被所有对象所共享4.可以直接被类名所调用实例变量和类变量的区别:1.存放位置. 类变量随着类的加载而存在与方法区中. 实例

Java解惑七:更多类之谜

谜题66 继承的问题. 对于实例方法:命名相同时,子类会覆写父类的方法,且访问权限至少和父类一样大. 对于域:命名相同时,子类会隐藏父类的域,且访问权限任意. 谜题67 不要重用库中的类名. 谜题68 命名的问题. 类名应该以大写字母开头,形式为:MixedCase. 变量以小写字母开头,形式为:mixedCase. 常量以大写字母开头,形式为:MIXED_CASE. 单个大写字母,只能用于类型参数,形式为:Map<K, V>. 包名应该都是小写,形式为:lower.case. 当一个变量和一

耿丹16-1第七次作业

-- Deadline: 2016-11-3 23:00pm -- 作业内容:https://edu.cnblogs.com/campus/bjgygd/Sixteen-One/homework/160 -- 第七次作业总结: 1. 大部分同学独立思考,完成了自己的作业,不错,请继续保持! 2. 部分同学对自定义函数的使用还很不清楚,请请教周围同学,比如131号同学,或者助教,或者老师!争取尽快掌握. 3. 这次代码我是直接在coding.net上点评的,以后均会如此,请大家也养成通过codin

3.28日第七次作业12章沟通管理13章合同管理

3.28日第七次作业12章沟通管理13章合同管理   第12章.项目沟通管理   1.项目沟通管理包括哪些过程?(记)P349 答:1).沟通计划编制 2).信息分发 3).绩效报告 4).项目干系人管理 2.阻碍有效沟通的因素有哪些?P351-352 答:1).沟通双方的物理距离 2).沟通的环境因素 3).缺乏清晰的沟通渠道 4).复杂的组织结构 5).复杂的技术术语 6).有害的态度 3.沟通计划编制的第一步是什么?目的是什么?P353 答:沟通计划编制的第一步是干系人分析.其目的是得出项

软件过程与项目管理第七次作业

软件过程与项目管理第七周作业 我们的2D游戏已经基本成型了,只有一些小的接口没有实现,现在要做的主要工作就是测试.我们测试要用到的语言是lua语言.我们以前没有接触过lua语言.这周我就上网学习了一下lua语言的背景知识,下面做一个简要的总结: 1.lua简介:lua是一个小巧的脚本语言.其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能.Lua由标准C编写而成,几乎在所有操作系统和平台上都可以编译,运行.Lua并没有提供强大的库,这是由它的定位决定的.所以Lua不适合作为开

Java二十周年之我和java的七年之痒

我和java的七年之痒                              ----java二十周年征文 粉淡香清自一家,未容桃李占年华. java,今已二十桃李年华之年.我七年前与她结缘,那年她年华豆蔻,我弱冠有六.我们从相识到相守走过了七个冬夏,都说七年有痒,值CSDN java二十年征稿之际,我也想说说我们的七年,痒从何来: 七年前,我和java她还未曾谋面,草率的以为她是it的一部分,那时对我来讲it和娱乐圈是一样一样的,神秘而遥远.当时我在做销售工作,每周都有到外地出差,经常买些

2017-2018-2 1723《程序设计与数据结构》第七周作业 总结

作业地址 第七周作业:https://edu.cnblogs.com/campus/besti/CS-IMIS-1723/homework/1806 (本周博客直接在作业界面打了分,可供随时查看) 提交情况如图:(严域俊这次忘交,请下次注意) 作业要求 教材第9章 (1)阅读9.1-9.5章节 (2)代码托管到[email protected],参考一下使用开源中国托管代码 (3)完成课后自测题,并参考答案学习 (4)完成课后练习题 (5)完成程序设计项目:至少完成PP9.1.PP9.3. (6

第五到七次作业总结

三次作业多线程设计 第五次作业多线程电梯的设计为:输入.总调度器.三部电梯,共5个线程.输入和总调度器从共享对象--请求队列--中获取请求,由总调度器向三部电梯系统派发请求,一个电梯系统本身就是继承的第三次作业的具有捎带功能的(拥有一部电梯的)调度器,可以自行处理派发到电梯系统的一系列请求. 第六次作业IFTTT的线程设计为:每个监控作业一个线程,相互之间没有交互. 第七次作业设计为:主线程.100辆出租车.每个请求一个线程.主线程调用输入处理方法每增加一个请求就开启一个请求处理线程,所有请求处