电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

软件设计模式复习题

软件设计模式复习题_第1页
1/26
软件设计模式复习题_第2页
2/26
软件设计模式复习题_第3页
3/26
软件设计模式复习题1、 熟悉每个设计模式的定义、模式 UML 图解、模式使用情形以及模式优缺点。2、 设计模式的两大主题是什么?3、 设计模式分成几大类?每大类各包含哪些模式?4、 为什么要使用设计模式?使用设计模式有哪些好处?5、 比较抽象工厂模式和工厂方法模式相似性和差异性。什么情况下使用抽象工厂模式?什么情形下使用工厂方法模式?6、 简述原型模式中浅层克隆和深度克隆的区别?分别给出代码说明。7、 模板方法和普通的实现类继承抽象类方式有何区别?8、 是比较和分析适配器模式和桥接模式之间的共性和差异性。9、 请用组合模式实现学校人事管理模式。10、综合应用装饰模式、命令模式和状态模式实现工具条命令按钮鼠标进入时高亮显示状态以及鼠标单击按钮后呈现凹陷状态,表明当前按钮为选中状态。11、请阐述享元模式是如何节约系统内存的?试举例分析使用享元模式前后的内存节约之比。12、使用解析器模式实现对学生成绩表的查询输入语句进行解析并执行查询,成绩表结构如下:学号姓名专业班级课程代码课程名称课程性质任课老师成绩13、结合命令模式和备忘录模式实现程序的 undo 和 redo 功能。14、试比较和分析中介者模式和观察者模式之间的相似性和差异性?两者是否能够相互转化?15、模板方法和普通的抽象类继承有什么区别?16、使用访问者模式对 12 题中的学生信息进行报到。1、 熟悉每个设计模式的定义、模式 UML 图解、模式使用情形以及模式优缺点。(见书)答: 单件模式:单例模式:class Singleton{private static Singleton instance; private Singleton(){} public static Singleton GetInstance(){if (instance == null) { instance = new Singleton();} return instance; } 客户端代码:class Program{static void Main(string[] args) { Singleton s1 = Singleton.GetInstance(); Singleton s2 = Singleton.GetInstance(); if (s1 = = s2) {Console.WriteLine("Objects are the same instance");} Console.Read();}} 多线程时的单例(Lock 是确保当一个线程位于代码的临界区时,另一个线程不进入临界区。假如其他线程试图进入锁定的代码,则它将一直等待(即被阻止),直到该对象被释放)class Singleton{private static Singleton instance; private static readonly object syncRoot = new object(); private Singleton(){} ...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

软件设计模式复习题

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部