java通用工厂设计模式.doc_第1页
java通用工厂设计模式.doc_第2页
java通用工厂设计模式.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java中通用的工厂模式1. 工厂方法模式的核心是一个抽象工厂类,而简单工厂模式把核心放到了一个具体类上.简单工厂是工厂方法模式的特例。 工厂方法模式和抽象工厂模式的最主要的区别在于对工厂的抽象程度上。 抽象工厂模式中一般是抽象出工厂接口,表示他就是一个工厂,而不管它是制造什么产品的工厂,他的抽象程度较高。 而工厂方法模式的抽象工厂一般是针对于产品进行抽象,表示它是一个生产某类产品的工厂。简单工厂是不支持继承的,如果需要建立的对象过多,会使这个类变大,建立偶合性集中在这个类上. 工厂方法解决了简单工厂不支持继承的缺点. 以上两个模式所建立的对象是在一个等级结构中. 抽象工厂是面向多个平行等级结构的,其建立对象的原则是以簇(功能相似的对象)为单位划分需要建立的对象.2.工厂方法创建一般只有一个方法,创建一种产品。 抽象工厂一般有多个方法,创建一系列产品。 目的不一样工厂方法创建 一种 产品,他的着重点在于怎么创建,也就是说如果你开发,你的大量代码很可能围绕着这种产品的构造,初始化这些细节上面。也因为如此,类似的产品之间有很多可以复用的特征,所以会和模版方法相随。 抽象工厂需要创建一些列产品,着重点在于创建哪些产品上,也就是说,如果你开发,你的主要任务是划分不同差异的产品线,并且尽量保持每条产品线接口一致,从而可以从同一个抽象工厂继承。package org.niit.factory;import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.io.Reader;import java.util.Properties;import org.niit.dao.StuDao;import org.niit.daoimp.StuDaoImp;public class Factory private static Properties props=new Properties();statictry Reader r=new FileReader(Factory.txt);BufferedReader br=new BufferedReader(r);String message=null;while(message=br.readLine()!=null)String mess=message.split(=);props.setProperty(mess0, mess1); catch (FileNotFoundException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace();public static Object getInstance(String key)Object o=null;String value=props.getProperty(key);try Class c=Class.forName(value);o=c.newInstance(); catch (ClassNotFoundException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (InstantiationException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (IllegalAccessException e) / TODO Auto-generated catch blocke.pri

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论