工厂模式

原创 2016年05月31日 20:06:07

                                                                                                              工厂模式

   

    在设计模式中,一个类代表另一个类的功能,这种类型的模式称为结构性模式。在代理模式中,我们创建具有对象的对象,以便向外界提供功能接口。

 我们一般会在什么地方会用到呢?我们明确地计划不同条件下创建爱不同实例时而实现的代码的关键就创建过程在其子类执行

   根据UML类图来实现这些代码:


  

 定义接口

public interface Shape {
 void draw();
}

public class Circle implements Shape{

	public void draw()
	{
		System.out.println("Inside Circle::draw() method.");
	}
}

public class Rectangle implements Shape{

	@Override
	public void draw() {
		// TODO Auto-generated method stub
		
		System.out.println("Inside Rectangele::draw() method.");
	}

}

public class Square implements Shape{

	@Override
	public void draw() {
		// TODO Auto-generated method stub
		
		System.out.println("Inside Square::draw() method.");
	}

}
public class ShapeFactory {

  public Shape getShape(String shapeType)
  { 
	   if(shapeType == null)
	   {
	     return null;
	   }
	   if(shapeType.equalsIgnoreCase("CIRCLE")){
		   return new Circle();
	   }
	   else if(shapeType.equalsIgnoreCase("RECTANGLE")){
		   return new Rectangle();
	   } 
	   else if(shapeType.equalsIgnoreCase("SQUARE")){
		   return new Square();
	   }
	    return null;
		  
  }
}

public class FactoryPatterDemo {
   public static void main(String[] args)
   {
	   ShapeFactory  shapeFactory = new ShapeFactory();
	   
	   //  获取 Circle
	   Shape shape1 = ((ShapeFactory) shapeFactory).getShape("CIRCLE");
	  shape1.draw();
	  
	  Shape shape2 = ((ShapeFactory) shapeFactory).getShape("RECTANGLE");
	  shape2.draw();
	  
	  Shape shape3 = ((ShapeFactory) shapeFactory).getShape("SQUARE");
	  shape3.draw();
	  
	  
   }
}



   

  运行结果:

  






 

版权声明:本文为博主原创文章,未经博主允许不得转载。

使用cache研究工厂模式

  • 2017年11月30日 14:09
  • 8KB
  • 下载

工厂模式简介和实例代码

  • 2016年11月17日 17:58
  • 3.87MB
  • 下载

C#中的三层架构+工厂模式BLL、DAL、IDAL、MODEL、DBUtility、DALFactory层级

三层架构,我们一般说的三层架构通常指的是: 1、表现层(UI):就是展现给用户的界面,无论是网站前台还是应用程序界面; 2、业务逻辑层(BLL):针对具体问题的逻辑操作; 3、数据访问层(DAL...

简单工厂模式

  • 2017年08月16日 20:07
  • 60.84MB
  • 下载

Factory(工厂模式)

Factory(工厂模式)概述工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。 这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创...

工厂模式测试

  • 2017年02月21日 17:01
  • 12KB
  • 下载

抽象工厂模式

  • 2016年08月12日 06:56
  • 18KB
  • 下载

asp.net mvc中自行搭建实现工厂模式的spring.net+三层架构 (15-4-20)

在之前的文章中,我们已经搭好了三层框架,通过调用业务层的子接口得到实例化的业务子类,通过业务子类来调用数据访问层子接口,由子接口来实例化数据访问层子类。这里我们需要明确把框架搭这么复杂的原因是遵循了设...

工厂模式及其实现

  • 2016年06月17日 14:13
  • 2KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:工厂模式
举报原因:
原因补充:

(最多只允许输入30个字)