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);

    }
}

 

 

 

posted @ 2021-08-05 20:36  热心市民陆女士  阅读(156)  评论(0编辑  收藏  举报