• JAVA类练习题-猫狗吃食物


    题目

    人:姓名,年龄,性别,(喂宠物)
    猫:姓名,品种,喜爱食物(数组)
    狗:姓名,品种,喜爱食物(数组)
    1.手动输入喂宠物的种类
    2.手动输入喂的食物判断是否爱吃

    面向对象封装很重要,将一些代码块封装在一起,需要时候调用,方便后来的管理,也方便自己和其他人读代码。在工作中,最好不要在main类中建立过多的对象,通过类相互调用,简化代码块的编写。实现方法的重用。(面向对象的三大特点是:封装,继承,多态),一定要有封装思维!!!方便自己方便他人!

    思路:

    根据题意,分别建立三个类,调用关系是:人类里面含有feed方法调用猫狗类,猫狗类里面有方法isok判断键盘输入的食物是不是对应动物喜欢吃的食物。

    package test;
    
    import java.util.Scanner;
    
    public class test0 {
        //女人类
        public String name;
        public int age;
        public char sex;
        public test0()
        {
            name="lisa";
            age=11;
            sex='女';
        }
        public void information()
        {
            System.out.println(age+"岁的"+sex+name+"在喂宠物");
        }
        public void feed(String CWname)
        {
            if("猫".equals(CWname))
            {
                test00 mao=new test00();
                mao.isok("猫");
            }
            else if("狗".equals(CWname))
            {
                test000 gou=new test000();
                gou.isok("狗");
            }
        }
    }
    package test;
    
    import java.util.Scanner;
    
    public class test00{
        //猫类
        public String name;
        public String type;
        public String[] favorite={"鱼干","猫粮","水"};
        public  test00()
        {
            name="cat";
            type="猫";
            
        }
        public void isok(String s)
        {
                System.out.println("请输入你想喂的食物:");
    
                String food=new Scanner(System.in).next();
                for(int i=0;i<3;i++)
                {
                if(type.equals(s)&favorite[i].equals(food))
                {
                    System.out.println(name+type+"爱吃"+favorite[i]);
                    break;
                }
                else if(i==2)
                {
                    System.out.println(food+name+type+"不爱吃");
                    break;
                }
                }
    
        }
    }
    package test;
    
    import java.util.Scanner;
    
    public class test000 {
        //狗类
            public String name;
            public String type;
            public String[] favorite={"狗粮","骨头","水"};
            public  test000()
            {
                name="dog";
                type="狗";
                
            }
            public void isok(String s)
            {
                    System.out.println("请输入你想喂的食物:");
    
                    String food=new Scanner(System.in).next();
                    for(int i=0;i<3;i++)
                    {
                    if(type.equals(s)&favorite[i].equals(food))
                    {
                        System.out.println(name+type+"爱吃"+favorite[i]);
                        break;
                    }
                    else if(i==2)
                    {
                        System.out.println(food+name+type+"不爱吃");
                        break;
                    }
                    }
    
            }
    
    }
    package test;
    import java.util.Scanner;
    public class Test0_test {
        public static void main(String[] args) {
            
            System.out.println("请输入你想喂的动物:");
            String CWname=new Scanner(System.in).next();
            test0 woman=new test0();
            woman.feed(CWname);
    
        }
    }
     
  • 相关阅读:
    【JavaScript】出现即使设置了ID也获取不到的可能原因与window.onload
    雄踞AppStore榜首的游戏&lt;别踩到白块儿&gt;源码分析和下载(一)
    WordPress公布新文章Email通知注冊用户
    BZOJ 1861 ZJOI2006 Book 书架 Splay
    Oracle Outline总结
    Matplot中文乱码完美解决方式
    Linux 在一个命令行上执行多个命令
    tophat
    echo输出到stderr
    随机森林
  • 原文地址:https://www.cnblogs.com/lumc5/p/15105296.html
Copyright © 2020-2023  润新知