一天,妈妈买了一篮子水果(Fruit),有香蕉(Banana)、苹果(Apple)和椰子(Coconut)。小明拿到了一个香蕉就要“剥了皮吃”,小红拿到了一个苹果就要“削了皮吃”,小丽拿到了一个椰子就要“钻一个孔来喝”。 用Java实现这段内容
时间: 2024-09-18 18:01:46 浏览: 66
在这个场景中,我们可以使用Java的继承和多态特性来模拟。首先,我们创建一个`Fruit`抽象类作为所有水果的共同基础,并提供一些通用的行为,如`eat()`方法:
```java
// Fruit抽象类
public abstract class Fruit {
public void eat() {
System.out.println("这个水果需要打开");
}
}
// 子类Banana、Apple和Coconut继承自Fruit
public class Banana extends Fruit {
@Override
public void eat() {
System.out.println("小明剥开香蕉皮吃掉它");
}
}
public class Apple extends Fruit {
@Override
public void eat() {
System.out.println("小红削去苹果皮享用它");
}
}
public class Coconut extends Fruit {
@Override
public void eat() {
System.out.println("小丽钻个孔喝椰子里的水");
}
}
```
然后,在主程序里,你可以通过引用`Fruit`类型的变量来表示任意一种水果,实际运行时会根据不同类型的对象调用相应的`eat()`方法:
```java
public class Main {
public static void main(String[] args) {
Fruit basket[] = {new Banana(), new Apple(), new Coconut()};
for (Fruit fruit : basket) {
fruit.eat();
}
}
}
```
当你运行这个程序,每个孩子拿到对应的水果都会按照自己的习惯处理。
阅读全文