Java 工厂模式变形的多种应用

2014-11-23 22:10:03 · 作者: · 浏览: 39

工厂模式在项目开发中是使用效率非常高的,意思就是说定义一个用于创建对象的接口,让子类去决定实例化哪一个类。这就是一个工厂类的示意图


接着来一个简单的例子:


Java 工厂模式变形的多种应用


如上图所示,我们首先定义我们的产品抽象类接口,也可以是抽象类:


--------------------------------------分割线 --------------------------------------


--------------------------------------分割线 --------------------------------------


package factory;


public abstract class PlatForm {
public void search(){
System.out.println("你搜索的结果是。。。。。。");
}

public abstract void music();
}


下面是一些实现类


package factory;


public class BaiduProduct extends PlatForm{


@Override
public void music() {
System.out.println("baidu music");
}


}



package factory;


public class Qihu360Product extends PlatForm{


@Override
public void music() {
System.out.println("360 music");
}


}


package factory;


public class SogouProduct extends PlatForm{


@Override
public void music() {
System.out.println("sogou music");
}


}


三个实现类已经完成,下面我们要来一个工厂的抽象类


package factory;


public abstract class Creator {
/**
* 创建一个产品对象,其中T 可以为 String Enum Class等 参数可以自己设置
* @param c
* @return
*/
public abstract T createProduct(Class c);
}