Java 实例:简单工厂模式实现果园苹果、草莓、桃子生产
以下是使用 Java 实现简单工厂模式来生产苹果、草莓和桃子这三种水果的示例代码: ```java // 水果类,这是一个抽象类 abstract class Fruit { public abstract void showName(); } // 苹果类,继承自水果类 class Apple extends Fruit { @Override public void showName() { System.out.println("这是苹果"); } } // 草莓类,继承自水果类 class Strawberry extends Fruit { @Override public void showName() { System.out.println("这是草莓"); } } // 桃子类,继承自水果类 class Peach extends Fruit { @Override public void showName() { System.out.println("这是桃子"); } } // 水果工厂类,用于创建不同的水果对象 class FruitFactory { public Fruit createFruit(String type) { if (type.equalsIgnoreCase("apple")) { return new Apple(); } else if (type.equalsIgnoreCase("strawberry")) { return new Strawberry(); } else if (type.equalsIgnoreCase("peach")) { return new Peach(); } else { System.out.println("无效的水果类型"); return null; } } } public class SimpleFactoryExample { public static void main(String[] args) { FruitFactory factory = new FruitFactory(); // 购买苹果 Fruit apple = factory.createFruit("apple"); apple.showName(); // 购买草莓 Fruit strawberry = factory.createFruit("strawberry"); strawberry.showName(); // 购买桃子 Fruit peach = factory.createFruit("peach"); peach.showName(); // 购买不存在的水果 Fruit unknown = factory.createFruit("banana"); } } ``` 在上述代码中,首先定义了一个抽象的`Fruit`类,然后分别创建了`Apple`、`Strawberry`和`Peach`三个具体的水果类继承自`Fruit`类。`FruitFactory`类作为简单工厂,根据传入的水果类型创建相应的水果对象。在`main`方法中,通过调用工厂类的方法来获取不同的水果对象并展示其名称。 ######[AI写代码神器 | 524点数解答 | 2024-10-17 16:20:22]
- Pygame实现种树游戏:种树、合成与买卖乐趣多(字节豆包 | 2138点数解答 | 2026-06-08 15:39:01)20
- Java 实现复制粘贴功能:打造简易文本复制粘贴程序(GPT | 1497点数解答 | 2024-08-25 09:40:33)465
- Java 实例:简单工厂模式实现果园苹果、草莓、桃子生产(字节豆包 | 524点数解答 | 2024-10-17 16:20:22)299
- Python编程:解析小明和小李喜欢水果集合的运算奥秘( | 769点数解答 | 2024-04-23 17:32:15)342
- 解决数据库“dm.jdbc.driver.dmexception: 数据溢出”问题的全步骤指南(阿里通义 | 598点数解答 | 2024-10-15 15:48:38)369
- 达梦数据库数据溢出问题排查及多维度解决方法(阿里通义 | 403点数解答 | 2024-10-15 15:48:41)1320
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)469
- C++模拟抽牌决定值日程序(百度文心 | 618点数解答 | 2026-03-13 20:28:38)44
- Python 代码:合并食品与家居清单,巧妙去除重复物品!(字节豆包 | 89点数解答 | 2025-03-13 09:12:59)225
- C++实现水果总价计算及开发要点(字节豆包 | 616点数解答 | 2026-05-23 11:45:08)22
- Python 农场游戏代码转换为 C++ 及开发建议(字节豆包 | 1265点数解答 | 2026-05-24 08:37:19)18
- "Java Code: Uncovering Stock Statistics through CSV File Reading"(字节豆包 | 66点数解答 | 2024-11-13 15:31:04)375