欢迎来到天天文库
浏览记录
ID:40650495
大小:22.96 KB
页数:11页
时间:2019-08-05
《设计模式程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、作业一(1):工厂方法模式AmdCPU.java:publicclassAmdCPUimplementsCPU{publicvoidplay(){System.out.println("AmdCPU生产中....");}}AmdCPUFactory.java:publicclassAmdCPUFactoryimplementsCPUFactory{publicCPUproductCPU(){System.out.println("AmdCPU工厂生产AmdCPU。");returnnewAmdCPU();}}Client.java:publicclas
2、sClient{publicstaticvoidmain(Stringargs[]){try{CPUcpu;CPUFactoryfactory;factory=(CPUFactory)XMLUtil.getBean();cpu=factory.productCPU();cpu.play();}catch(Exceptione){e.printStackTrace();System.out.println(e.getMessage());}}}CPU.java:publicinterfaceCPU{publicvoidplay();}CPUFactory
3、.java:publicinterfaceCPUFactory{publicCPUproductCPU();}IntelCPU.java:publicclassIntelCPUimplementsCPU{publicvoidplay(){System.out.println("IntelCPU生产中....");}}IntelCPUFactory.java:11publicclassIntelCPUFactoryimplementsCPUFactory{publicCPUproductCPU(){System.out.println("IntelCPU
4、工厂生产IntelCPU。");returnnewIntelCPU();}}XMLUtil.java:importjava.io.*;importjavax.xml.parsers.*;importorg.w3c.dom.*;importjava.lang.*;publicclassXMLUtil{publicstaticObjectgetBean(){try{DocumentBuilderFactorydFactory=DocumentBuilderFactory.newInstance();DocumentBuilderbuilder=dFacto
5、ry.newDocumentBuilder();Documentdoc;doc=builder.parse(newFile("config.xml"));NodeListnl=doc.getElementsByTagName("className");NodeclassNode=nl.item(0).getFirstChild();StringcName=classNode.getNodeValue();Classc=Class.forName("exe1_1."+cName);Objectobj=c.newInstance();returnobj;}
6、catch(Exceptione){e.printStackTrace();returnnull;}}}作业一(2):抽象工厂模式AmdCPU.java:publicclassAmdCPUimplementsCPU{publicvoidplay(){System.out.println("AmdCPU生产中....");}}AmdFactory.java:publicclassAmdFactoryimplementsEFactory11{publicCPUproductCPU(){returnnewAmdCPU();}publicMemoryprodu
7、ctMemoryBank(){returnnewAmdMemory();}}AmdMemory.java:publicclassAmdMemoryimplementsMemory{publicvoidproduce(){System.out.println("Amd内存条生产中....");}}Client.java:publicclassClient{publicstaticvoidmain(Stringargs[]){try{CPUcpu;EFactoryfactory;Memoryme;factory=(EFactory)XMLUtil.getB
8、ean();cpu=factory.productCPU();cpu.play();me=fa
此文档下载收益归作者所有