一. 单选题(共12题) (单选题)场景( )不是状态模式的实例。 A. 银行账户根据余额不同拥有不同的存取款操作 B. 游戏软件中根据虚拟角色级别的不同拥有不同的权限 C. 某软件在不同的操作系统中呈现不同的外观 D. 会员系统中会员等级不同可以实现不同的行为 我的答案: C:某软件在不同的操作系统中呈现不同的外观;正确答案: C:某软件在不同的操作系统中呈现不同的外观; (单选题
请自学状态模式,并从模式特点与定义、模式应用场景、模式案例及代码分析、模式优缺点四个方面阐述状态模式。 状态(State)模式的定义:状态模式是属于行为模式家族的一种设计模式。它通常用于面向对象编程中,它使对象能够根据其内部状态的变化改变其行为。对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。 状态模式的关键特征: 1.Context:这个
一. 单选题(共9题) (单选题)以下关于迭代器模式的叙述错误的是( )。 A. 迭代器模式提供一种方法来访问聚合对象,而无须暴露这个对象的内部表示 B. 迭代器模式支持以不同的方式遍历一个聚合对象 C. 迭代器模式定义了一个访问聚合元素的接口,并且可以跟踪当前遍历的元素,了解哪些元素已经遍历过而哪些没有 D. 在抽象聚合类中定义了访问和遍历元素的方法并在具体聚合类中实现这些方法 我的答
一. 单选题(共5题) (单选题)下图描述了一种设计模式,该设计模式不可以( )。 A. 动态决定由一组对象中某个对象处理该请求 B. 动态指定处理一个请求的对象集合,并高效率地处理一个请求 C. 使多个对象都有机会处理请求,避免请求的发送者和接收者间的耦合关系 D. 将对象连成一条链,并沿着该链传递请求 我的答案: B:动态指定处理一个请求的对象集合,并高效率地处理一个请求;正确答案
一. 单选题(共6题) (单选题)在享元模式中,外部状态是指( )。 A. 享元对象可共享的所有状态 B. 享元对象可共享的部分状态 C. 由享元对象自己保存和维护的状态 D. 由客户端保存和维护的状态 我的答案: D:由客户端保存和维护的状态;正确答案: D:由客户端保存和维护的状态; (单选题)以下关于享元模式的叙述错误的是( )。 A. 享元模式运用共享技术有效地支持大量
一. 单选题(共4题) (单选题)某公司欲开发一个图形控件库,要求可以在该图形控件库中方便地增加新的控件,而且可以动态地改变控件的外观或给控件增加新的行为,如可以为控件增加复杂的立体边框、增加控件的鼠标拖拽行为等。针对上述需求,使用( )模式来进行设计最合适。 A. 适配器 (Adapter) B. 装饰 (Decorator) C. 外观 (Facade) D. 命令 (Command
一. 单选题(共4题) (单选题)一个树形文件系统体现了( )模式。 A. Decorator(装饰) B. Composite(组合) C. Bridge(桥接) D. Proxy(代理) 我的答案: B:Composite(组合); (单选题)以下关于组合模式的叙述错误的是( )。 A. 组合模式对叶子对象和组合对象的使用具有一致性 B. 组合模式可以通过类型系统来对容器中
一. 单选题 1.桥接设计模式将抽象部分与它的实现部分相分离,使它们都可以独立地变化。下图为该设计模式的类图,其中,( )用于定义实现部分的接口。 A. Abstraction B. ConcreteImplementorA C. ConcreteImplementorB D. Implementor 我的答案: D:Implementor;正确答案: D:Implementor; (单选
一. 单选题(共4题,8分) (单选题, 2分) 当想使用一个已经存在的类,但其接口不符合需求时,可以采用( )设计模式将该类的接口转换成我们希望的接口。 A. 命令 (Command) B. 适配器 (Adapter) C. 装饰 (Decorator) D. 享元 (Flyweight) 我的答案: B:适配器 (Adapter);正确答案: B:适配器 (Adapter); (
实验五:原型模式 一、实验目的 掌握原型模式的概念以及浅克隆与深克隆的工作原理,能够灵活使用原型模式解决相关问题。 二、实验内容 某销售管理系统设计并实现一个客户类Customer,在该类中包含姓名、电话以及存储客户地址的成员变量,客户地址的类型为Address,用浅克隆和深克隆分别实现Customer对象的复制,并比较这两种克隆方式的异同。 要求: 1、画出UML图(浅克隆和深克隆); 2、给
实验四:单例模式 一、实验目的 掌握单例模式的概念,能够灵活使用单例模式解决相关问题。 二、实验内容 某软件公司开发人员要创建一个数据库连接池,将指定个数的(如3个)数据库连接对象存储在连接池中,客户端代码可以从池中随机取一个连接对象来连接数据库。试通过对单例类进行改造,设计一个能够自行指定个数实例对象的数据库连接类并Java代码编程实现(请分别用饿汉和懒汉单例模式实现)。 要求: 1、画出UM
实验三:抽象工厂模式与建造者模式 一、实验目的 掌握抽象工厂模式和建造者模式的概念,能够灵活使用抽象工厂模式和建造者模式解决相关问题。 二、实验内容 场景描述一: 某手机游戏软件公司欲推出一款新的游戏软件,该软件能够支持Symbian和Android等多个主流的手机操作系统平台,针对不同的手机操作系统,该游戏软件提供了不同的游戏操作控制类和游戏界面控制类,并提供相应的工厂类来封装这些类的初始化。
一、实验目的 掌握简单工厂模式和工厂方法模式的概念,能够灵活使用简单工厂模式和工厂方法模式解决相关问题。 二、实验内容 场景描述一: 在某OA系统中,系统根据对比用户在登录时输入的账号和密码以及在数据库中存储的账号和密码是否一致来进行身份验证,如果验证通过,则取出存储在数据库中的用户权限等级(以整数形式存储),根据不同的权限等级创建不同等级的用户对象,不同等级的用户对象拥有不同的操作权限。现使用
实验目的与要求 深刻理解面向对象编程思想与设计原则,熟悉Java语言中类的声明、属性的声明、方法的定义、对象的创建与使用等语法知识,能够根据具体问题完成对象的抽象、类的定义及程序的编写,并在程序中使用适当的设计原则,初步体验面向对象编程的优点。 实验内容 使用Java语言编写一个能实现“加、减、乘、除”四则运算的计算器程序。 要求: (1)在程序中要体现面向对象编程语言的三大特征:封装、继承和多
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号