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