工厂模式之简单工厂模式

简单工厂模式是最常用的工厂模式。一般由一个抽象基类(接口)和N个子类和工厂类组成。工厂类有一个静态的create方法,根据不同的属性选择生成不同的子类对象。

如以下代码

基类: 

public  class  AbstractOS{

  /**

   *获取当前对象名字

   */

  public abstract String getName();

}

子类windows:

public  class Windows extends AbstractOS{

  /**

   *获取当前对象名字

   */

  @override

  public String getName(){

    return "windows";

  }

}

子类Linux:

public  class Linux extends AbstractOS{

  /**

   *获取当前对象名字

   */

  @override

  public String getName(){

    return "Linux";

  }

}

工厂类:

public class OSFactory{

   public static final String LINUX_NAME = "linux";
   public static final String WINDOWS_NAME = "windows";

   public static AbstractOS  create(String name){

    switch(name){

      case LINUX_NAME:

        return new Linux();

      case WINDOWS_NAME:

        return new Windows();

      default:

        return new Linux();

    }

  }

}

执行工厂方法:

  AbstractOS os = OSFactory.create(OSFactory.WINDOWS_NAME);

  os.getName();

原文地址:https://www.cnblogs.com/liumz0323/p/10381022.html