1099111130设计模式实验报告

2019-03-09 19:39

哈尔滨工业大学华德应用技术学院

实 验 报 告

课程名称: 软件设计模式 系 别: 计算机应用技术系 专 业: 软件工程 学 号: 1099111130 姓 名: 陈天任

学 期: 2012年春季学期 实验成绩:

计算机应用技术系 监制

实验名称一:单例模式 实验时间:2012.4.21 学时:2 实验地点:s203 实验目的:掌握饿式单例、懒式单例模式的基本实现形式,并体会两种实现方式的特点。掌握单例模式的基本应用。 实验步骤: 在项目的开发过程中,经常需要读取配置文件,根据配置文件的参数决定具体的软件业务逻辑。ReadConfig.java程序实例实现了从配置文件”zzr.ini”文件中读取data参数值的功能。 zzr.ini 文件内容如下:data=123456789 import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class ReadConfig {

private String paramA; public ReadConfig() { } public String getParamA() {return paramA;} public void setParamA(String paramA) { } - 1 -

Properties p=new Properties(); try { } catch (FileNotFoundException e) { { } e.printStackTrace(); e.printStackTrace(); } catch (IOException e) p.load(new FileInputStream(\)); this.paramA=p.getProperty(\); this.paramA = paramA;

public static void main(String args[]) { ReadConfig rc=new ReadConfig(); System.out.println(\配置文件的值为:\+rc.getParamA());} } 1、运行如上程序写出运行结果 配置文件的值为:123456789 2、如上程序,参照JDK帮助文档,逐行写出注释。 import java.io.*;//引入IO包 import java.util.Properties;//引入util包的Properties类 public class ReadConfig //创建ReadConfig类 { private String paramA;//定义个私有的字符串 public ReadConfig() //第一构造方法 { Properties p=new Properties();//new 一个Propertier类的实例 try //抓文件不存在和io异常 { p.load(new FileInputStream(\));//创建连接文件的流 this.paramA=p.getProperty(\);//设置paramA的值等于文件中的DATA的属性 } } public String getParamA() //定义一个方法返回字符串类型的paramA的值 {return paramA;} public void setParamA(String paramA) //定义一个方法设置paramA的值 {this.paramA = paramA;} public static void main(String args[])//main 主方法 { ReadConfig rc=new ReadConfig();//实例化ReadConfig一个实例 System.out.println(\配置文件的值为:\+rc.getParamA());//输出catch (FileNotFoundException e)//处理异常 { e.printStackTrace();//在控制台显示异常,给开发者看的 } catch (IOException e) { } e.printStackTrace(); paramA的值 } }

- 2 -

3、在程序中,通过new ReadConfig();来得到配置文件的内容。在一个项目中,有可能多处使用配置文件,就需要我们多次进行new操作。每一次的new都是一次读取外部文件的过程,然后将读取到得的参数值,放到内存中。这样势必会造成系统资源的浪费。把如上问题总结一下:能不能再系统运行的过程中,控制某个类仅有一个实例。 import java.io.*; import java.util.Properties; public class ReadConfig { private static String paramA=null; private static ReadConfig rc=null; private ReadConfig() { } public static synchronized ReadConfig getIntance() { if(rc == null) { } return rc;} public String getParamA() {return paramA;} public static void main(String args[]) { ReadConfig fq=ReadConfig.getIntance(); System.out.println(\配置文件的值为:\+fq.getParamA());} } rc=new ReadConfig(); Properties p=new Properties(); try { } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) {e.printStackTrace();} p.load(new FileInputStream(\)); paramA=p.getProperty(\); 实验总结:通过实验对单例模式有了深刻的理解。知道了单例模式具体两种的的使用方法和何时使用单例模式等。

- 3 -

实验名称二:简单工厂模式 实验时间:2012.4.21 学时:2 实验地点:s203 实验目的:掌握简单工厂模式的基本实现形式。体会单工厂模式的特点。掌握单工厂模式的基本应用。 实验步骤: IUserDAO.java public interface IUserDAO {void getUserByID(int id);} MSServerDAO.java public class MSServerUserDAO implements IUserDAO { public void getUserByID(int id) { }} System.out.println(\+id); Factory.java public class factory { } Zzr.java

- 4 -

public static IUserDAO createISD(int a) { } IUserDAO user = null; if(a == 1) { } return user; user = new MSServerUserDAO();


1099111130设计模式实验报告.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:[最新版]重庆科技学院毕业设计格式 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: