//抽象产品类
public abstract class Product {
//产品类的公共方法
public void method1() {
//业务逻辑处理
}
//抽象方法
public abstract void method2();
}
//具体产品类
public class ConcreteProduct1 extends Product {
public void method2() {
//业务逻辑处理
}
}
public class ConcreteProduct2 extends Product {
public void method2() {
//业务逻辑处理
}
}
//抽象工厂类
public abstract class Creator {
/**
*创建一个产品类,其输入参数类型可以自行设置,通常为String,Enum, Class,当然可以为空
*/
public abstract <T extends Product> T createProduct(Class<T> cls);
}
//具体工厂类
public class ConcteteCreator extends Creator {
public <T extends Product> T createProduct(Class<T> cls) {
Product product = null;
try {
product = (Product)Class.forName(cls.getName()).newInstance();
} catch (Exception e) {
//异常处理
}
return (T)product;
}
}
//场景类
public class Client {
public static void main(String[] args) {
Creator creator = new ConcreteCreator();
Product product = creator.createProduct(ConcreteProduct1.class);
/**
*继续业务处理
*/
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有