一、简单工厂模式解释:
简单工厂模式(Simple Factory Pattern)属于类的创新型模式,又叫静态工厂方法模式(Static FactoryMethod Pattern),是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。
二、简单工厂模式的UML图:
简单工厂模式中包含的角色及其相应的职责如下:
工厂角色(Creator):这是简单工厂模式的核心,由它负责创建所有的类的内部逻辑。当然工厂类必须能够被外界调用,创建所需要的产品对象。
抽象(Product)产品角色:简单工厂模式所创建的所有对象的父类,注意,这里的父类可以是接口也可以是抽象类,它负责描述所有实例所共有的公共接口。
具体产品(Concrete Product)角色:简单工厂所创建的具体实例对象,这些具体的产品往往都拥有共同的父类。
三、代码实现
抽象产品:
public interface IApi {
void show();
}
具体产品:
public class AndroidApi implements IApi{
public void show() {
System.out.println("这是Androidapi");
}
}
public class IOSApi implements IApi{
public void show() {
System.out.println("这是IOSAPI");
}
}
抽象产品工厂:
public interface IFactory {
IApi create();
}
具体产品工厂:
public class AndroidFactory implements IFactory{
public IApi create() {
return new AndroidApi();
}
}
public class IOSFactory implements IFactory{
public IApi create() {
return new IOSApi();
}
}
调用端代码:
public class Client {
public static void main(String[] args) {
IFactory factory = new AndroidFactory();
factory.create().show();
}
}
介绍完毕