设计模式之--抽象工厂
来源:互联网 发布:汽车选购知乎 编辑:程序博客网 时间:2024/06/05 19:18
抽象工厂模式(Abstract Factory Pattern):提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。抽象工厂模式又称为Kit模式,它是一种对象创建型模式。举例子说明。
代码如下:
package abstractfactory;
public interface Fruit
{
public String getName();
}
package abstractfactory;
public interface Veggie
{
public String getName();
}
package abstractfactory;
public class NorthernFruit implements Fruit
{
private String name;
public NorthernFruit(String name)
{
this.name=name;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
}
package abstractfactory;
public class TropicalFruit implements Fruit
{
private String name;
public TropicalFruit(String name)
{
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
}
package abstractfactory;
public interface Gardener
{
public Fruit createFruit(String name);
public Veggie createVeggie(String name);
}
package abstractfactory;
public class TropicalGardener implements Gardener
{
public Fruit createFruit(String name)
{
return new TropicalFruit(name);
}
public Veggie createVeggie(String name)
{
return new TropicalVeggie(name);
}
}
package abstractfactory;
public class NorthernGardener implements Gardener
{
public Fruit createFruit(String name)
{
return new NorthernFruit(name);
}
public Veggie createVeggie(String name)
{
return new NorthernVeggie(name);
}
}
package abstractfactory;
public class TestClient {
private static Gardener gardener;
public static void main(String[] args){
gardener=new NorthernGardener();
Fruit f=gardener.createFruit("苹果");
System.out.println(f.getName());
Veggie v=gardener.createVeggie("香菜");
System.out.println(v.getName());
}
}
- 设计模式之抽象工厂
- 设计模式 之 抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之-抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式 之 抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 设计模式之抽象工厂
- 刚开微博,纪念一下,以后好好记录所学所得
- Android——动态设置TextView CompoundDrawable的大小
- 杭电1466---计算直线的交点数
- matlab_Gui_1
- 常用的协议端口号
- 设计模式之--抽象工厂
- threading.Thread condition锁
- USB 枚举和设备描述符之学习笔记
- PHP底层的运行机制与原理
- iOS开发笔记6:图片轮播及其无限循环效果,ios笔记
- 文本框只能输入0-100的数字
- 执行计划——常复习 转载他人
- Android 关于OOM的解决方案
- highChartsjs柱状图