java继承练习-实现动物世界的继承关系

题目描述

请编码实现动物世界的继承关系:. 动物(Animal)具有属性:类别,行为: 吃(eat)、睡觉(sleep). 动物包括:兔子(Rabbit),老虎(Tiger). 这些动物吃的行为各不相同(兔子吃 草,老虎吃肉);但睡觉的行为是一致 的。

源代码

// 动物类 Animal
class Animal {
    private String category;

    // 构造方法
    public Animal(String category) {
        this.category = category;
    }

    // 吃的行为
    public void eat() {
        System.out.println(category + "正在吃东西");
    }

    // 睡觉的行为
    public void sleep() {
        System.out.println(category + "正在睡觉");
    }
}

// 兔子类 Rabbit
class Rabbit extends Animal {
    public Rabbit() {
        super("兔子");
    }

    // 重写吃的行为
    @Override
    public void eat() {
        System.out.println("兔子正在吃草");
    }
}

// 老虎类 Tiger
class Tiger extends Animal {
    public Tiger() {
        super("老虎");
    }

    // 重写吃的行为
    @Override
    public void eat() {
        System.out.println("老虎正在吃肉");
    }
}

// 测试类
public class AnimalWorld {
    public static void main(String[] args) {
        Animal rabbit = new Rabbit();
        Animal tiger = new Tiger();

        rabbit.eat(); // 兔子正在吃草
        rabbit.sleep(); // 兔子正在睡觉

        tiger.eat(); // 老虎正在吃肉
        tiger.sleep(); // 老虎正在睡觉
    }
}

在上述代码中,我们首先定义了一个抽象的 Animal 类,它具有一个私有的字符串属性 category 表示动物的类别。Animal 类中定义了吃和睡觉两个行为方法,分别输出不同动物的吃和睡觉信息。

然后,我们创建了 Rabbit 类和 Tiger 类,它们都继承自 Animal 类,并分别重写了吃的行为方法。Rabbit 类中的吃方法输出兔子正在吃草的信息,而 Tiger 类中的吃方法输出老虎正在吃肉的信息。

最后,在测试类 AnimalWorld 中,我们创建了一个兔子对象和一个老虎对象,并分别调用它们的吃和睡觉方法进行测试。

运行该代码,输出结果如下:

兔子正在吃草
兔子正在睡觉
老虎正在吃肉
老虎正在睡觉

这样,我们就实现了动物世界的继承关系,不同的动物类继承自动物类,并可以根据需要重写父类的方法以实现各自特定的行为。

© 版权声明
THE END
喜欢就支持一下吧
点赞5赞赏 分享