首页 > 其他分享 >11.03实验5:建造者模式

11.03实验5:建造者模式

时间:2025-01-07 23:57:05浏览次数:1  
标签:String void 建造 11.03 computer 实验 Override lap public

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:   1、理解建造者模式的动机,掌握该模式的结构;   2、能够利用建造者模式解决实际问题。 [实验任务一]:计算机组装   使用建造者模式,完成下述任务:计算机组装工厂可以将CPU、内存、硬盘、主机等硬件设备组装在一起构成计算机,计算机的类型可以是笔记本,也可以是台式机。 实验要求:   1. 画出对应的类图;   2. 提交源代码; package com.hua.sjms; public abstract class Builder {     Computer computer = new Computer();     abstract public void buildZhuJi();     abstract public void buildYinPan();     abstract public void buildCpu();     abstract public void buildNeiCun();     public Computer getCompture()     {         return computer;     } } package com.hua.sjms; public class Creator {     private Builder comptureKind;     public void setCompture(Builder kind) {         this.comptureKind = kind;     }     public Computer construct(){         comptureKind.buildCpu();         comptureKind.buildYinPan();         comptureKind.buildZhuJi();         comptureKind.buildNeiCun();         return comptureKind.getCompture();     } }  package com.hua.sjms; public class Computer {     private String cpu;     private String neiCun;     private String yinPan;     private String zhuJi;     public String getZhuJi() {         return zhuJi;     }     public void setZhuJi(String zhuJi) {         this.zhuJi = zhuJi;     }     public String getYinPan() {         return yinPan;     }     public void setYinPan(String yinPan) {         this.yinPan = yinPan;     }     public String getNeiCun() {         return neiCun;     }     public void setNeiCun(String neiCun) {         this.neiCun = neiCun;     }     public String getCpu() {         return cpu;     }     public void setCpu(String cpu) {         this.cpu = cpu;     } }  package com.hua.sjms; public class LapBuilder extends Builder{     @Override     public void buildZhuJi() {         computer.setZhuJi("武极");     }     @Override     public void buildYinPan() {         computer.setYinPan("512G");     }     @Override     public void buildCpu() {         computer.setCpu("因特尔");     }     @Override     public void buildNeiCun() {         computer.setNeiCun("16G");     } }  package com.hua.sjms; public class TaiShiBuilder extends Builder{     @Override     public void buildZhuJi() {         computer.setZhuJi("联想");     } @Override     public void buildYinPan() {         computer.setYinPan("1T");     }     @Override     public void buildCpu() {         computer.setCpu("英伟达");     }     @Override     public void buildNeiCun() {         computer.setNeiCun("16G");     } }  package com.hua.sjms; public class Client {     public static void main(String[] args) {         Builder lap;         Creator factory=new Creator();         for (int i = 0; i < 2; i++) {             if(i==1) {                 System.out.println("笔记本配置如下");                 lap = new LapBuilder();             }             else {                 System.out.println("台式机配置如下");                 lap = new TaiShiBuilder();             }             factory.setCompture(lap);             factory.construct();             System.out.println("CPU:"+lap.getCompture().getCpu());             System.out.println("内存:"+lap.getCompture().getNeiCun());             System.out.println("硬盘:"+lap.getCompture().getYinPan());             System.out.println("主机:"+lap.getCompture().getZhuJi());         }     } } 3.注意编程规范。

标签:String,void,建造,11.03,computer,实验,Override,lap,public
From: https://www.cnblogs.com/kongxiangzeng/p/18658684

相关文章

  • 11.04实验6:原型模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解原型模式的动机,掌握该模式的结构;2、能够利用原型模式解决实际问题。 [实验任务一]:向量的原型用C++完成数学中向量的封装,其中,用指针和动态申请支持向量长度的改变,使用浅克隆和深克隆复制向量类,比较这两种克隆方......
  • 11.05实验7:单例模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解单例模式的动机,掌握该模式的结构; 2、能够利用单列模式解决实际问题。[实验任务一]:学号的单一 仿照课堂的身份证的例子,实现每个同学仅有一个学号这一问题。实验要求: 1.画出对应的类图; 2.提交源......
  • 11.07实验8:适配器模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解适配器模式的动机,掌握该模式的结构; 2、能够利用适配器模式解决实际问题。[实验任务一]:双向适配器 实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。实验要求: 1.画出对应的类图; 2.提交源......
  • 11.09实验9:桥接模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解桥接模式的动机,掌握该模式的结构;2、能够利用桥接模式解决实际问题。 [实验任务一]:两个维度的桥接模式用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。实验要求:1.画出对应的......
  • 11.10实验10:组合模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解组合模式的动机,掌握该模式的结构;2、能够利用组合模式解决实际问题。 [实验任务一]:组合模式用透明组合模式实现教材中的“文件夹浏览”这个例子。实验要求:1.文件的执行不需真正实现,只需简单提示即可; 2.提......
  • 11.1实验3:工厂方法模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解工厂方法模式的动机,掌握该模式的结构; 2、能够利用工厂方法模式解决实际问题。[实验任务一]:加密算法 目前常用的加密算法有DES(DataEncryptionStandard)和IDEA(InternationalDataEncryptionAlgorithm)国际......
  • 11.02实验4:抽象工厂模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解抽象工厂模式的动机,掌握该模式的结构; 2、能够利用抽象工厂模式解决实际问题。[实验任务一]:人与肤色 使用抽象工厂模式,完成下述产品等级结构: 实验要求: 1.画出对应的类图; 2.提交源代码;Black.j......
  • Ensp基础实验---同网段PC以及网关之间的通信
        通过安装ENSP,可以模拟搭建网络仿真环境,初步了解ENSP之后,可以进行一些简单的网络拓扑搭建,通过对相关设备的配置,实现网络畅通的目的    此次模拟的是同一个网段内,两台PC之间的通信情况,同时选用路由器的一个指定接口,用作整个网络网段的网关,检验PC与网关之间的......
  • 9.26实验1:UML与面向对象程序设计原则
    [实验任务一]:UML复习阅读教材第一章复习UML,回答下述问题:面向对象程序设计中类与类的关系都有哪几种?分别用类图实例说明。1、关联关系   2、聚合关系   3、依赖关系   4、组合关系   [实验任务二]:单一职责原则 登录模块在实际项目开发中很常见,请......
  • IPSEC实验汇总
    IPSEC实验汇总1.IKE主模式及预共享秘钥认证配置举例1.1配置参考如下:设备组网:A---B设备A设备B sysnameA sysnameB##interfaceLoopBack0interfaceLoopBack0 ipaddress2.1.1.1255.255.255.255 ipaddress3.1.1.1255.255.255.255##inte......