commit a8569e29bd4249b4ca5bffde9adb518076e1fe7f Author: 倪思羽 <1577964316@qq.com> Date: Sun Oct 26 21:35:43 2025 +0800 提交文件 diff --git a/src/main/java/ConcreteProductA.java b/src/main/java/ConcreteProductA.java new file mode 100644 index 0000000..3c3c0c4 --- /dev/null +++ b/src/main/java/ConcreteProductA.java @@ -0,0 +1,6 @@ +public class ConcreteProductA implements Product { + @Override + public void operation() { + System.out.println("ConcreteProductA operation"); + } +} \ No newline at end of file diff --git a/src/main/java/ConcreteProductB.java b/src/main/java/ConcreteProductB.java new file mode 100644 index 0000000..0f17fd9 --- /dev/null +++ b/src/main/java/ConcreteProductB.java @@ -0,0 +1,6 @@ +public class ConcreteProductB implements Product { + @Override + public void operation() { + System.out.println("ConcreteProductB operation"); + } +} \ No newline at end of file diff --git a/src/main/java/Factory.java b/src/main/java/Factory.java new file mode 100644 index 0000000..3803edc --- /dev/null +++ b/src/main/java/Factory.java @@ -0,0 +1,24 @@ +public class Factory { + public static Product createProduct(String type) { + if (type == null) { + return null; + } + if (type.equalsIgnoreCase("A")) { + return new ConcreteProductA(); + } else if (type.equalsIgnoreCase("B")) { + return new ConcreteProductB(); + } + return null; + } + + // 添加测试方法 + public static void main(String[] args) { + // 创建产品A + Product productA = Factory.createProduct("A"); + productA.operation(); + + // 创建产品B + Product productB = Factory.createProduct("B"); + productB.operation(); + } +} \ No newline at end of file diff --git a/src/main/java/Product.java b/src/main/java/Product.java new file mode 100644 index 0000000..466a88e --- /dev/null +++ b/src/main/java/Product.java @@ -0,0 +1,3 @@ +public interface Product { + void operation(); +} \ No newline at end of file