• 设计模式---工厂模式


    工厂模式介绍
    
    1.工厂模式?
        
        工厂设计模式是最常见的设计模式之一,在工厂模式中,提供一种最佳的创建对象的方式,最大程度的实现代码的解耦。
         
        工厂模式的优缺点:
        优点:
            高度解耦,不需要再去new对象;
            扩展性高:当你想增加一个产品,只需要扩展工厂类,并增加一个产品即可;
            使用简单:屏蔽了产品的具体实现,使用者只用关注产品的接口即可;
        缺点:
            每次增加一个产品的时候都需要新增一个实现类,这样下来类的数量不断增加,增加了系统复杂度;
        
    2.工厂模式的简单实现:
        1.一个接口:
            public interface Car {
                void run();
            }
            
        2.接口的实现类对象:
            实现类1:
            public class Benz implements Car {
                @Override
                public void run() {
                    System.out.println("我买了一辆奔驰,贼高端!!!");
                }
            }
            
            实现类2:
            public class Ferrari implements Car {
                @Override
                public void run() {
                    System.out.println("我买了一辆法拉利, 跑的贼快!!!");
                }
            }
            
        3.工厂类:
            public class CarFactory {
    
                //对外提供方法,便于外界获取实例对象
                public Car getInstance(String brand) {
                    if (brand == null) {
                        return null;
                    }
    
                    if ("Ferrari".equals(brand)) {
                        return new Ferrari();
                    } else if ("Benz".equals(brand)) {
                        return new Benz();
                    }
                    return null;
                }
            }
            
        4.测试:
            public class CarTest {
                public static void main(String[] args) {
    
                    //创建工厂对象
                    CarFactory carFactory = new CarFactory();
                    //获取对象
                    Car benz = carFactory.getInstance("Benz");
                    benz.run();
                }
            }
    
        
            
        
    
            
  • 相关阅读:
    aspose.word 页脚插入图片图片浮动
    Aspose.Words插入表格,表格居中显示
    git常用命令
    openlayers之矢量加载标记点
    三、反射、动态加载
    openlayers交互之多边形
    openlayers轨迹回放
    openlayers交互之线
    关闭2000的默认共享
    开始blog,有点晚,但还是早
  • 原文地址:https://www.cnblogs.com/lyle-liu/p/12750448.html
Copyright © 2020-2023  润新知