合集-设计模式
摘要:面向对象程序设计中类与类的关系都有哪几种?分别用类图实例说明。 1. 继承 (Inheritance) 假设有一个Animal类,定义了一些基本的行为如eat()。 Dog类继承自Animal类,并可能添加特定于狗的行为如bark()。 + + | Animal | | - eat() | + +
阅读全文
摘要:登录模块在实际项目开发中很常见,请按照教材28页(PPT49页)利用单一职责原则重构后的类图实现这一模块。 import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;impor
阅读全文
摘要:[实验任务一]:计算机组装 使用建造者模式,完成下述任务:计算机组装工厂可以将CPU、内存、硬盘、主机等硬件设备组装在一起构成计算机,计算机的类型可以是笔记本,也可以是台式机。 源代码: interface Builder { void setCPU(String cpu); void setRam
阅读全文
摘要:使用抽象工厂模式,完成下述产品等级结构: 1. 画出对应的类图; 2. 提交源代码; public interface Skin { void show();} public interface Gender { void show();} public interface HumanFactory
阅读全文
摘要:目前常用的加密算法有DES(Data Encryption Standard)和IDEA(International Data Encryption Algorithm)国际数据加密算法等,请用工厂方法实现加密算法系统。 实验要求: 1.画出对应的类图; 2.提交该系统的代码,该系统务必是一个可以能
阅读全文
摘要:[实验任务一]:女娲造人 使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,如果传入参数R,则返回一个Robot对象。请用程序设计实现上述场景。 1.类图 2. 实验源代码 package org.example
阅读全文
摘要:[实验任务一]:向量的原型 用C++完成数学中向量的封装,其中,用指针和动态申请支持向量长度的改变,使用浅克隆和深克隆复制向量类,比较这两种克隆方式的异同。 #include <iostream> #include <stdexcept> class Vector { private: int* e
阅读全文
摘要:[实验任务一]:组合模式 用透明组合模式实现教材中的“文件夹浏览”这个例子。 实验要求: 1.文件的执行不需真正实现,只需简单提示即可; 2.提交源代码; 3.注意编程规范。 类图: 源代码 import java.util.ArrayList; import java.util.List; //
阅读全文
摘要:实验11:装饰模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解装饰模式的动机,掌握该模式的结构; 2、能够利用装饰模式解决实际问题。 [实验任务]:手机功能的升级用装饰模式模拟手机功能的升级过程:简单的手机(SimplePhone)在接收来电时,会发出声音提醒主人;而JarP
阅读全文
摘要:实验7:单例模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解单例模式的动机,掌握该模式的结构; 2、能够利用单列模式解决实际问题。 [实验任务一]:学号的单一 仿照课堂的身份证的例子,实现每个同学仅有一个学号这一问题。 类图 源代码 public class Student
阅读全文
摘要:实验八 适配器模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解适配器模式的动机,掌握该模式的结构; 2、能够利用适配器模式解决实际问题。 [实验任务一]:双向适配器 实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。 类图 源代码 public interface Do
阅读全文
摘要:实验9:桥接模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解桥接模式的动机,掌握该模式的结构; 2、能够利用桥接模式解决实际问题。 [实验任务一]:两个维度的桥接模式 用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。 类图 源代码 pu
阅读全文
摘要:实验12:外观模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解外观模式的动机,掌握该模式的结构; 2、能够利用外观模式解决实际问题。 [实验任务一]:计算机开启 在计算机主机(Mainframe)中,只需要按下主机的开机按钮(on()),即可调用其他硬件设备和软件的启动方法
阅读全文
摘要:实验13:享元模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解享元模式的动机,掌握该模式的结构; 2、能够利用享元模式解决实际问题。 试验任务一 设计一个围棋软件,在系统中只存在一个白棋对象和一个黑棋对象,但是它们可以在棋盘的不同位置显示多次。 类图 源代码 public i
阅读全文
摘要:实验14:代理模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解代理模式的动机,掌握该模式的结构; 2、能够利用代理模式解决实际问题。 [实验任务一]:婚介所 婚介所其实就是找对象的一个代理,请仿照我们的课堂例子“论坛权限控制代理”完成这个实际问题,其中如果年纪小于18周岁,婚
阅读全文
摘要:实验15:职责链模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解职责链模式的动机,掌握该模式的结构; 2、能够利用职责链模式解决实际问题。 [实验任务一]:财务审批 某物资管理系统中物资采购需要分级审批,主任可以审批1万元及以下的采购单,部门经理可以审批5万元及以下的采购单,
阅读全文
摘要:实验16:命令模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解命令模式的动机,掌握该模式的结构; 2、能够利用命令模式解决实际问题。 [实验任务一]:多次撤销和重复的命令模式 某系统需要提供一个命令集合(注:可以使用链表,栈等集合对象实现),用于存储一系列命令对象,并通过该命
阅读全文
摘要:实验17:解释器模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解解释器模式的动机,掌握该模式的结构; 2、能够利用解释器模式解决实际问题。 [实验任务一]:解释器模式 某机器人控制程序包含一些简单的英文指令,其文法规则如下: expression ::= direction
阅读全文
摘要:实验18:迭代器模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解迭代器模式的动机,掌握该模式的结构; 2、能够利用迭代器模式解决实际问题。 [实验任务一]:JAVA和C++常见数据结构迭代器的使用 信1305班共44名同学,每名同学都有姓名,学号和年龄等属性,分别使用JAVA
阅读全文
摘要:实验19:中介者模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解中介者模式的动机,掌握该模式的结构; 2、能够利用中介者模式解决实际问题。 [实验任务一]:虚拟聊天室 在“虚拟聊天室”实例中增加一个新的具体聊天室类和一个新的具体会员类,要求如下: 1. 新的具体聊天室中发送的
阅读全文