您的位置:首页 > 其它

设计模式之禅—23种设计模式详解_2 工厂模式

2017-09-12 15:21 477 查看
工厂模式:定义一个用于创建对象的借口,让子类决定实例化哪一个类

UML图示:






代码示例:

/**
* Created by nevenon 2017/9/12.
*/
public class MobileCompany {
public void main(String[] args[]){
AbstractProductFactory factory = new PhoneFactory();
factory.createPhone(XiaoMi.class);
factory.createPhone(HuaWei.class);
}
}

interface Phone{
public void call();
}

class XiaoMi implements Phone{
@Override
public void call(){
System.out.println("我是XiaoMi手机");
}
}
class HuaWei implements Phone{

@Override
public void call() {
System.out.println("我是HuaWei手机");
}
}

interface AbstractProductFactory{
public <T extends Phone> T createPhone(Class<T> c);
}

class PhoneFactory implements AbstractProductFactory{

@Override
public <T extends Phone> T createPhone(Class<T> c) {
try {
Phone phone = (Phone) forName(c.getName());
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return null;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: