java设计模式--工厂方法设计模式

来源:互联网 发布:aicare袜子怎么样知乎 编辑:程序博客网 时间:2024/06/05 10:31

工厂方法模式的意义是定义一个创建产品对象的工厂接口,将实际创建的工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。

(工厂方法模式与简单工厂模式在结构上的不同不是很明显。
工厂方法类的核心是一个抽象工厂类,而简单工厂模式把核心放在了一个具体类上。)

=====================
package cn.edu.bzu.First;

/*
 * 工厂方法模式。定义一个创建产品对象的抽象接口
 * 将具体产品的创建推到
 * 声明接口的类中去实现。
 * */

//声明创建产品的接口
public interface CreateFactory {
    public void create();
}

//子类继承接口,实现具体的产品创建
class CarA implements CreateFactory{
    public void create(){
        System.out.println("创造出汽车A……");
    }
}
class CarB implements CreateFactory{
    public void create(){
        System.out.println("创造出汽车B……");
    }
}

============
package cn.edu.bzu.First;


//核心工厂接口。负责具体工厂子类必须实现的接口
public interface CoreFactory {
    public CreateFactory createfactory();
}

//实现核心工厂的方法
class MyCar implements CoreFactory{
    public CreateFactory createfactory() {
        return new CarA();
    }
}
class YourCar implements CoreFactory{
    public CreateFactory createfactory() {
        return new CarB();
    }
}

============

package cn.edu.bzu.First;

public class Test {
    public static void main(String args[]){
        CoreFactory mycorefactory=new MyCar();
        mycorefactory.createfactory().create();
        
        CoreFactory yourcorefactory=new YourCar();
        yourcorefactory.createfactory().create();
    }
}

=============


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 买的手机壳太滑怎么办 硅胶手机壳太滑怎么办 磨砂手机壳太滑怎么办 被热胶棒烫了怎么办 车钢垫子次了怎么办 【图】机组主轴密封漏水怎么办? 孕妇吃了好多杏怎么办 怀孕6个月吃了好多杏怎么办 白色纯棉衣服染色了怎么办 红色硅胶壳黑了怎么办 小米6gps信号弱怎么办 网线头卡子断了怎么办 入户网线太短了怎么办 孩子弹钢琴大拇指出琴键怎么办 手指肿胀疼痛变粗怎么办 iphone系统占用内存大怎么办 手机系统占用内存大怎么办 头盔固定配件掉了怎么办 移动4g网络不好怎么办 wifi登录密码忘记了怎么办 电脑登录密码忘记了怎么办 笔记本电脑登录密码忘记了怎么办 信用卡登录密码忘记了怎么办 华为p9后置摄像头模糊怎么办 手机图片文件夹删了怎么办 发票系统导出的xml怎么办 微信支付被限制怎么办 跨行三天不到账怎么办 测速正常但实际很慢怎么办 善领wifi上网慢怎么办 文件太大拷贝不到u盘怎么办 电脑的视频文件不显示缩略图怎么办 无线网连接不上怎么办 路由器wifi密码忘了怎么办 路由器账号密码忘了怎么办 刷卡刷多了钱怎么办 刷卡刷了两次钱怎么办 小米手机强刷后一联网就被锁怎么办 苹果刷机出现的问题怎么办 小米手机解不开图案锁怎么办 小米6无限重启怎么办