工厂模式
工厂模式是一种创建型模式,常用的工厂模式包括:简单工厂模式、工厂方法模式和抽象工厂模式。
简单工厂模式
简单工厂模式在每次新加一个类时都需要修改源代码,不符合“开闭原则”。所以此模式适合于与创建的类不多时使用。下面是简单类图:
//新建一个接口
public interface Base{
public void method();
}
//实现类Sub1
public class Sub1 implements Base {
public void method() {
System.out.println("this is Sub1...");
}
}
//实现类Sub2
public class Sub2 implements Base {
public void method() {
System.out.println("this is Sub2...");
}
}
// 工厂类
public class BaseFactory{
public static Base getBase(String type){
if("Sub1".equals(type)){
return new Sub1();
}else if("Sub2".equals(type)){
return new Sub2();
}else{
System.out.println("暂不支持的类型..."+type);
return null;
}
}
}
// 测试类
import org.junit.Test;
public class FactoryTest {
@Test
public void demo(){
Base base = BaseFactory .getBase("Sub1");
if(base != null){
base.method();
}
}
}