实验报告6_单件模式.doc

实验报告6_单件模式.doc

ID:56772069

大小:302.50 KB

页数:8页

时间:2020-07-08

实验报告6_单件模式.doc_第1页
实验报告6_单件模式.doc_第2页
实验报告6_单件模式.doc_第3页
实验报告6_单件模式.doc_第4页
实验报告6_单件模式.doc_第5页
资源描述:

《实验报告6_单件模式.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、云南大学软件学院实验报告序号:姓名:程聪学号:20151120082专业:软件工程日期:2017/12/7成绩:实验六单件模式的运用一、实验目的:单件模式是一种用于确保整个应用程序中只有一个类实例且这个实例所占资源在整个应用程序中是共享时的程序设计方法。在熟悉单件模式相关理论知识的基础上,使用单件模式实现一款应用程序框架。二、实验要求:使用单件模式实现一款应用程序框架,要求如下:1.使用同步getInstance()方法实现应用程序框架的运行环境组件,其中包含登录用户名、密码、级别等信息。2.应用程序框架采用模块化设计,模块控制组件使用急切实例化方法实现。该组件负责管

2、理在用模块并处理模块间的通信。3.为了避免模块的多次重复创建和释放,应用程序框架使用双重检查加锁的方法实现模块缓存组件。该组件缓存被释放的模块实例,当再次请求使用的时候,如果缓存了该模块,则返回该实例,否则就创建模块。4.以上三个组件使用不同的单例实现方法,在应用程序命名空间内都能够访问使用。1、设计并绘制该程序的类图;2、依照设计的类图使用Java语言编写代码,并实现该程序;3、除了核心的模式相关类实现外,提供测试环境,按照难度高低,分别是:a)控制台程序,Client硬编码初始化模式和测试环境,运行结果文本输出;b)控制台程序,Client初始化测试环境,并根据用

3、户输入运算,运行结果文本输出;c)设计并实现用户UI,Client初始化测试环境,并根据用户在UI控件上的输入运算,运行结果文本输出;三、实验内容:1.主要类图使用同步getInstance()方法的代码publicclassSingleton{publicstaticSingletonuniqueUser;staticStringinfo1;staticStringinfo2;staticintcount=0;Stringusername;publicstaticStringgetInfo1(){returninfo1;}publicstaticvoidsetInf

4、o1(Stringinfo1){Singleton.info1=info1;}publicstaticStringgetInfo2(){returninfo2;}publicstaticvoidsetInfo2(Stringinfo2){Singleton.info2=info2;}publicStringgetUsername(){returnusername;}publicvoidsetUsername(Stringusername){this.username=username;}publicStringgetPassword(){returnpassword;

5、}publicvoidsetPassword(Stringpassword){this.password=password;}publicintgetPrior(){returnprior;}publicvoidsetPrior(intprior){this.prior=prior;}Stringpassword;intprior;publicstaticsynchronizedSingletongetInstance(){if(uniqueUser==null){info1="没有该单例,现在创建";uniqueUser=newSingleton();}else{i

6、nfo1="";}info2="已有该单例,直接传值";returnuniqueUser;}privateSingleton(){count++;username="chengcong";password="20151120082";prior=1;}publicstaticintgetCount(){returncount;}publicstaticvoidsetCount(intcount){Singleton.count=count;}}急切实例化方法代码publicclassSingleton2{staticintcount=0;staticStringinf

7、o1;publicstaticStringgetInfo1(){returninfo1;}publicstaticvoidsetInfo1(Stringinfo1){Singleton2.info1=info1;}publicstaticintgetCount(){returncount;}publicstaticvoidsetCount(intcount){Singleton2.count=count;}privatestaticSingleton2uniqueInstance=newSingleton2();privateSingleton2()

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。