首页 > 其他 > 详细

设计模式开始--工厂模式

时间:2015-03-26 23:04:00      阅读:217      评论:0      收藏:0      [点我收藏+]

工厂模式

1、作用:实例化对象,同时为了增加可扩展性,用户看到的只是接口和抽象类,接口代表的是产品,抽象类是工厂。

2、类图:

技术分享

3、类图实现

产品:

(1)接口

技术分享
public interface ICar {
    public void createCar();
}
View Code

(2)三个实现类实现结构 top mid low

技术分享
public class LowCar implements ICar {

    @Override
    public void createCar() {
        // TODO Auto-generated method stub
        System.out.println("low car");
    }

}
public class MidCar implements ICar {

    @Override
    public void createCar() {
        // TODO Auto-generated method stub
        System.out.println("mid car");
    }

}
public class TopCar implements ICar {

    @Override
    public void createCar() {
        // TODO Auto-generated method stub
        System.out.println("top car");
    }

}
View Code

(3)抽象工厂 AbstracFactory

技术分享
public abstract class AbstractFactory {
    public abstract ICar create();
}
View Code

(4)三个实现类 继承抽象工厂 top mid low

技术分享
public class LowCarFactory extends AbstractFactory {

    @Override
    public ICar create() {
        // TODO Auto-generated method stub
        return new LowCar();
    }

}
public class MidCarFactory extends AbstractFactory {

    @Override
    public ICar create() {
        // TODO Auto-generated method stub
        return new MidCar();
    }

}
public class TopCarFactory extends AbstractFactory {

    @Override
    public ICar create() {
        // TODO Auto-generated method stub
        return new TopCar();
    }

}
View Code

(5)测试类 分别使用->(实线)只调用接口和抽象类

技术分享
public class User {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        AbstractFactory factory = new TopCarFactory();
        ICar car = factory.create();
        car.createCar();
    }

}
View Code

 

设计模式开始--工厂模式

原文:http://www.cnblogs.com/sunshisonghit/p/4370208.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!