5.抽象工厂模式-单例模式答案

5.抽象工厂模式-单例模式答案

ID:38578878

大小:195.00 KB

页数:5页

时间:2019-06-15

5.抽象工厂模式-单例模式答案_第1页
5.抽象工厂模式-单例模式答案_第2页
5.抽象工厂模式-单例模式答案_第3页
5.抽象工厂模式-单例模式答案_第4页
5.抽象工厂模式-单例模式答案_第5页
资源描述:

《5.抽象工厂模式-单例模式答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、(4)抽象工厂模式电脑配件生产工厂生产内存、CPU等硬件设备,这些内存、CPU的品牌、型号并不一定相同,根据下面的“产品等级结构-产品族”示意图,使用抽象工厂模式实现电脑配件生产过程并绘制相应的类图,绘制类图并编程实现。interfaceCPU{voiddiscribe();}interfaceRAM{voiddiscribe();}classPcCPUimplementsCPU{publicvoiddiscribe(){System.out.println("PcCPU");}}classMacCPUimpleme

2、ntsCPU{publicvoiddiscribe(){System.out.println("MacCPU");}}classPcRAMimplementsRAM{publicvoiddiscribe(){System.out.println("PcRAM");}}classMacRAMimplementsRAM{publicvoiddiscribe(){System.out.println("MacRAM");}}interfaceComputerPartsFactory{CPUproduceCPU();RAMp

3、roduceRAM();}classPcFactoryimplementsComputerPartsFactory{publicPcCPUproduceCPU(){System.out.println("PcCPUproduced!");returnnewPcCPU();}publicPcRAMproduceRAM(){System.out.println("PcRAMproduced!");returnnewPcRAM();}}classMacFactoryimplementsComputerPartsFactor

4、y{publicMacCPUproduceCPU(){System.out.println("MacCPUproduced!");returnnewMacCPU();}publicMacRAMproduceRAM(){System.out.println("MacRAMproduced!");returnnewMacRAM();}}classComputerPartsClient{publicstaticvoidmain(Stringa[]){ComputerPartsFactoryfactory;CPUcpu;RA

5、Mram;factory=(ComputerPartsFactory)XMLUtil.getBean();//PcORMaccpu=factory.produceCPU();cpu.discribe();ram=factory.produceRAM();ram.discribe();}}(6)单例模式用懒汉式单例实现在某系统运行时,其登录界面类LoginForm只能够弹出一个,如果第二次实例化该类则提示“程序已运行”。绘制类图并编程实现。classLoginFormextendsJFrame{//Java.swing

6、包中的JFrame类用于创建窗口privatestaticLoginFormuniqueInstance=null;privateLoginForm(){//设置标题this.setTitle("LoginForm");this.setSize(400,300);//setSize(intwidth,intheight)//设置关闭按钮的事件this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);//设置是否可见this.setVisible(true);}pub

7、licstaticLoginFormgetInstance(){if(uniqueInstance==null){uniqueInstance=newLoginForm();}else{JOptionPane.showMessageDialog(null,"LoginFrame已经在运行!");}returnuniqueInstance;}}classLoginFormClient{publicstaticvoidmain(Stringa[]){LoginForms1=null,s2=null;s1=LoginFor

8、m.getInstance();s2=LoginForm.getInstance();System.out.println("s1==s2?");System.out.println(s1==s2);}}运行结果:

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

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

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