下面给出了四种设计模式的作用: 外观(Fa?ade :为子系统中的一组功能调用提供一个一致的接口,这个接口使得这一子系统更加容易使用; 装饰(Decorate):当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些额外的功能; 单件(Singleton :保证一个类仅有一个实例,并提供一个访问它的全局访问点; 模板方法(Template Method :在方法中定义算法的框架,而将算法中的一些操作步骤延迟到子类中实现。 请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(30 设计模式能够有效达到该目的;该系统中的某子模块需要为其他模块提供访问不同数据库系统(Oracle、SQL Server、DB2 UDB 等的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库、再打开数据库、最后对数据进行查询,(31 设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView和图片显示类(PictureView都继承了组件类(Component,分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,(32 设计模式可以实现该目的。 
(30A. 外观 B. 装饰 C. 单件 D. 模板方法 
(31A. 外观 B. 装饰 C. 单件 D. 模板方法 
(32A. 外观 B. 装饰 C. 单件 D. 模板方法

31C

32D

33B

最新文章

  1. axis2+struts拦截地址冲突问题
  2. canvas小结
  3. 用html5的视频元素所遇到的第一个坑
  4. TestNG BeforeClass BeforeMethod Test AfterClass AfterMethod
  5. Linux中的动态库和静态库(.a/.la/.so/.o)
  6. SharePoint 2013 图像呈现形式介绍
  7. Bootstrap 下拉菜单和滚动监听插件
  8. js中的prototype和constructor
  9. DISTINCT后按照DISTINCT之前的某列进行排序
  10. C#去掉周六周日的算法
  11. 重拾C,一天一点点_4_随想
  12. 【HDOJ】1979 Fill the blanks
  13. [AngularJS - thoughtram] Exploring Angular 1.3: Binding to Directive Controllers
  14. Java小项目--坦克大战(version1.0)
  15. JVM 看不到某些异常的stacktrace问题(转)
  16. Apache服务器学习笔记
  17. iOS开发-UI (一)常用控件
  18. Asp.net core 学习笔记 (AutoMapper)
  19. [转]RabbitMQ学习之:(十二)在Node.js环境下使用RabbitMQ
  20. Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作

热门文章

  1. 清理html中空白符/空格/换行在行内元素中产生的间距
  2. Chapter3——进入Android Dalvik虚拟机(二)
  3. oracle下 启动subversion命令 及 oracle相关服务启动备忘
  4. SNE降维与可视化
  5. myeclipse配置
  6. 爬虫代码实现六-Queue队列实现循环抓取
  7. UVaLive 6847 Zeroes (找规律,水题)
  8. UVa 1645 Count (递推,数论)
  9. 天天连萌UE分析
  10. FZU 2150 Fire Game (高姿势bfs--两个起点)(路径不重叠:一个队列同时跑)