定义: 定义一个用于创对象的接口,让子类决定实例化哪一个类,工厂方法使用一个类的实例化延迟到其子类.
工厂方法模式代码:
1.先定义一个产品的接口
public interface IProduct{
//产品的方法
public void productMethod();
}
2,实现产品
public Product implement IProduct(){
public void productMethod(){
system.out.println("实现了产品的方法");
}
}
2,定义工厂接口
public interface IFactory(){
//创建产品
public IProduct createProduct();
}
public Factory implement IFactory(){
public IProduct createProduct(){
return new IProduct();
}
}
public class Client{
public static void main (String[] args){
IFactory factory = new Factory();
IProduct product = factory.createProduct();
product.productMethod();
}
}
使用工厂方法后,调用端的耦合度大大降低了。并且对于工厂来说,是可以扩展的,以后如果想组装其他的汽车,只需要再增加一个工厂类的实现就可以。无论是灵活性还是稳定性都得到了极大的提高。