add the code

dev
wuuixm 4 months ago
parent 83f3c45bb0
commit 57ab809923

@ -0,0 +1,13 @@
public class ConcreteCreator extends Creator {
/**
*
* @return ConcreteProduct
*/
@Override
public Product factoryMethod() {
return new ConcreteProduct();
}
}

@ -0,0 +1,13 @@
public class ConcreteProduct extends Product {
/**
*
*/
@Override
public void operation() {
System.out.println("具体产品的操作方法被调用");
}
}

@ -0,0 +1,21 @@
public abstract class Creator {
/**
*
* @return
*/
public abstract Product factoryMethod();
/**
* 使
*/
public void someOperation() {
// 调用工厂方法创建产品
Product product = factoryMethod();
// 使用产品
product.operation();
}
}

@ -0,0 +1,18 @@
public class Main {
/**
*
* @param args
*/
public static void main(String[] args) {
// 创建具体工厂实例
Creator creator = new ConcreteCreator();
// 调用工厂的操作方法,该方法会使用工厂方法创建产品并调用产品的操作
creator.someOperation();
// 直接使用工厂方法创建产品
Product product = creator.factoryMethod();
product.operation();
}
}

@ -0,0 +1,7 @@
public abstract class Product {
/**
*
*/
public abstract void operation();
}
Loading…
Cancel
Save