Java工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。Java工厂模式分为三类,简单工厂模式、工厂方法模式、抽象工厂模式,这3中模式从前到后,逐步抽象,而且更具一般性。
前期准备工作(包括相关工具或所使用的原料等)eclipse 简单工厂模式
简单工厂模式也是“静态工厂模式”,它存在目的就是定义一个用于创建对象的接口。在简单工厂模式中,一个工厂类的处于对产品类实例化调用的中心位置上,它决定哪一个产品类应当被实例化。下图是简单工厂模式的一个示例,如图:

工厂类角色,这是本模式的核心,含有一定判断逻辑,在Java中一般是一个具体类实现,如图:

抽象产品角色,一般是具体产品继承的父类或者实现的接口,在Java中由接口或抽象类来实现,如图:

具体产品角色,工厂类所创建的对象就是此角色的实例,在Java中是具体的类来实现,如图:


测试类,如图:

工厂方法模式
工厂方法模式是简单工厂模式的进一步抽象化和推广,工厂方法模式里不在只有一个工厂类决定那个产品应该被实例化,这个由抽象工厂的子类来做,下面示例:

抽象工厂角色,这是工厂方法模式的核心,具体工厂角色必须实现的接口或者继承的父类,如图:

具体工厂角色,包含有业务逻辑代码,创建具体产品的对象,如图:


抽象产品角色,它是具体产品继承的父类或者实现的接口,如图

具体产品角色,具体工厂角色所创建的对象就是此角色的实例,Java中由具体的类来实现,如图:


测试类,如图:

抽象工厂模式
在抽象工厂模式中,抽象产品可能是一个或者多个,从而构成一个产品族,示例

抽象工厂类,如图:

具体工厂类,如图:

抽象产品类,如图:



具体产品类,如图:



测试类,如图:

- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
