The Factory pattern
来源:互联网 发布:海岛大亨4 mac 汉化 编辑:程序博客网 时间:2024/05/19 14:18
public class Factory {
public static void main(String[] args) {//Client
IFruit fruit=Factorytemp.getFruit("香蕉");//这里为什么要使用接口的类型,因为接口的引用可以接收实现此接口的类的实例
if(fruit!= null){
System.out.println(fruit.get());
}else{
System.out.println("sorry!");
}
}
}
interface IFruit{//可以定义接口或者使用抽象类
public String get();
}
class Factorytemp{//工厂类,根据一定的条件创建某一具体类的实例
public static IFruit getFruit(String name){//公有的静态方法,通过类名.方法名调用
if(name.equals("苹果")){
return new Apple();
}
else if(name.equals("橘子")){
return new Orange();
}
else{
return null;
}
}
}
class Apple implements IFruit{//具体的产品(被实例的类),通常具有共同的接口或者父类
public String get(){
return "采摘苹果";
}
}
class Orange implements IFruit{//具体的产品(被实例的类),通常具有共同的接口或者父类
public String get(){
return "采摘橘子";
}
}
- The forth pattern-----Factory Pattern
- The Factory Design Pattern
- PDP-The Factory Pattern
- The factory pattern
- The Factory pattern
- Introducing the Abstract Factory Pattern
- swift - The Factory Method Pattern
- Applying Abstract Factory Pattern: the Loki Way
- 工厂方法模式 The Factory Method Pattern
- 抽象工厂模式 The Abstract Factory Pattern
- Factory Pattern
- Factory Pattern
- Factory Pattern
- Factory Pattern
- Factory Pattern
- Factory Pattern
- Factory Pattern
- Factory Pattern
- Hadoop大数据NameNode体系结构
- BZOJ1015 [JSOI2008]星球大战starwar——逆向思维并查集+路径压缩
- 回溯法求0/1背包问题
- 反射和泛型的两个小技巧
- 关于下载并安装Vs2008
- The Factory pattern
- Iframe用法的详细讲解(属性、透明、自适应高度)和html中滚动条属性设置
- iOS网络缓存扫盲篇
- 灵活而奇特的C++语言特性——const(三)
- leetcode-448 Find All Numbers Disappeared in an Array
- 粗略列出并理解Java中的IO
- Swing
- Android中的原型模式
- 编程实现atoi函数