其中工厂模式又分为简单工厂模式,和多级工厂模式,不过这两种情况,和上一种都比较类似了,其中简单工厂模式只是简单的把抽象工厂类去掉,然后把工厂实现类的方法改成static方法。多级工厂模式是指:例如当我们见到一个比较复杂的项目时,所有的产品类都放到一个工厂类中去初始化会显得结构不清晰,那么我们现在就为每一种产品都有自己的一个工厂类;下面我会给出实例多级工厂类的应用。
我是有些基础类还是使用以前的,只不过为每个产品增加了一个工厂类
1:抽象工厂类:
package factory.more;
public abstract class AbstractPlatFactory {
public abstract PlatForm createPlat();
}
2:具体工厂类:
package factory.more;
public class BaiduFactory extends AbstractPlatFactory{
@Override
public PlatForm createPlat() {
// TODO Auto-generated method stub
return new BaiduProduct();
}
}
package factory.more;
public class Qihu360Factory extends AbstractPlatFactory{
@Override
public PlatForm createPlat() {
return new Qihu360Product();
}
}
package factory.more;
public class SogouFactory extends AbstractPlatFactory{
@Override
public PlatForm createPlat() {
return new SogouProduct();
}
}
场景类:
package factory.more;
public class Client {
public static void main(String[] args) {
PlatForm plat = new BaiduFactory().createPlat();
plat.search();
plat.music();
}
}
这是多级工厂类的使用,
实际上还有抽象工厂类的应用,它是指为相关对象提供一组接口,无需指定他们的具体类。(今天太晚了,以后有时间会接着说的)