设计模式学习之--Factory

     工厂模式是用来创建对象的(工厂)。
抽象工厂就是工厂的工厂- -#

适用场景:如果创建实例的时做的事情不是如赋值这样简单的事,可能是很长一段代码的操作,如果也写入构造函数中,那明显的就违背了面向对象的原则.封装(Encapsulation)和分派(Delegation);此时就需要将创建实例的责任与使用实例的责任分开。

抽象工厂结构图:
 
优点:
i.    具体的部件类与使用和初始化它们的类是独立的,因为抽象工厂类封装了创建部件对象的处理;
ii.    容易扩展;
iii.    可以使用户类通过产品的特征来使用具体的产品;

工厂模式的一个经典的实际应用就是spring的BeanFactory,它负责创建和分发bean,同时还负责在实例化bean时创建bean之间的关系,bean在被使用到的时候被创建,我们在使用的时候完全不去关心它是怎么被创建的,而只需直接使用我们需要的bean的实例。

你可能感兴趣的:(设计模式,spring,bean)