工厂模式--手机工厂的例子

本文通过手机制造的例子解释了工厂模式的运用。首先定义了手机及其组件接口,接着创建了不同部件的工厂,包括OPPO电池、显示屏、主板和外壳工厂。然后通过组装工厂将零件组合成手机。当需要更换电池供应商时,只需更改原材料工厂,组装工厂无需改动即可生产出搭载NOkia电池的OPPO手机,展示了工厂模式的灵活性。
摘要由CSDN通过智能技术生成

今天在网上看到了一篇关于工厂模式的文章,看起来很是简单易懂,就按作者的思路重新写了一遍加深对工厂模式的理解。作为低头一族的一员虎将,接下来我也用我们最常用的手机作为案例。做个例子,手机主要由电池、显示屏、手机主板、手机外壳组成。

1.先定义手机实体,手机由电池、显示屏、主板、外壳组成:

package com.factory;
/**
 * 描述:手机实体:手机由电池、显示屏、主板、外壳组成
 * 作者:zyb
 * 时间: 2017-3-25 下午12:30:28
 * 版本:1.0
 */
public class Phone {
   

    private String battry;
    private String display;
    private String matherBorad;
    private String shell;
    public String getBattry() {
        return battry;
    }
    public void setBattry(String battry) {
        this.battry = battry;
    }
    public String getDisplay() {
        return display;
    }
    public void setDisplay(String display) {
        this.display = display;
    }
    public String getMatherBorad() {
        return matherBorad;
    }
    public void setMatherBorad(String matherBorad) {
        this.matherBorad = matherBorad;
    }
    public String getShell() {
        return shell;
    }
    public void setShell(String shell) {
        this.shell = shell;
    }
    @Override
    public String toString() {
        return "Phone [battry=" + battry + ", display=" + display
                + ", matherBorad=" + matherBorad + ", shell=" + shell
                + ", getBattry()=" + getBattry() + ", getDisplay()="
                + getDisplay() + ", getMatherBorad()=" + getMatherBorad()
                + ", getShell()=" + getShell() + ", getClass()=" + getClass()
                + ", hashCode()=" + hashCode() + ", toString()="
                + super.toString() + "]";
    }
}

2.定义一个专门用来生产电池的接口:

package com.factory;
/**
 * 描述:生产电池的概念
 * 作者:zyb
 * 时间: 2017-3-25 下午12:25:18
 * 版本:1.0
 */
public interface IBattery {
   
    //生产电池
    public String crateBattery();
}

3.定义一个专门生产手机屏幕的接口:

package com.factory;
/**
 * 描述:显示屏生产概念
 * 作者:zyb
 * 时间: 2017-3-25 下午12:27:04
 * 版本:1.0
 */
public interface IDisplay {
   
    /**生产显示屏*/
    public String createDisplay();
}

4.定义一个专门生产手机主板的接口

package com.factory;
/**
 * 描述:手机主板生产概念
 * 作者ÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值