抽象类练习: 不同动物进食的方式不同,例如蛇吞,牛咀嚼。(1)定义抽象的动物类Animal,包含抽象方法eating(String food)方法;(2)定义动物子类牛、蛇等,重写父类动物的eating()方法实现不同动物不同的进食方式;(3)定义Living类,定义方法toEating(Animal animal,String food),测试不同动物的进食方式。测试结果如图所示。要求先画出类结构图,然后编写Java程序。
时间: 2023-11-27 07:53:31 浏览: 26
以下是类结构图和Java程序:
```java
// 抽象动物类
abstract class Animal {
public abstract void eating(String food);
}
// 牛类
class Cow extends Animal {
@Override
public void eating(String food) {
System.out.println("牛咀嚼" + food);
}
}
// 蛇类
class Snake extends Animal {
@Override
public void eating(String food) {
System.out.println("蛇吞" + food);
}
}
// 生命类
class Living {
public void toEating(Animal animal, String food) {
animal.eating(food);
}
}
// 测试类
public class Test {
public static void main(String[] args) {
Living living = new Living();
Animal cow = new Cow();
Animal snake = new Snake();
living.toEating(cow, "草");
living.toEating(snake, "老鼠");
}
}
```
输出结果为:
```
牛咀嚼草
蛇吞老鼠
```