用于限制对象访问的设计模式是( )A.AdapterB.DecoratorC.DelegationD.Proxy
用于限制对象访问的设计模式是( )
A.Adapter
B.Decorator
C.Delegation
D.Proxy
B.Decorator
C.Delegation
D.Proxy
参考解析
解析:本题考查常见设计模式的功能,备选答案中除Delegation,其它均为经典设计模式。
适配器(adapter)模式。适配器模式将一个接口转换成客户希望的另一个接口,从而使接口不兼容的那些类可以一起工作。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。在类适配器模式中,通过使用一个具体类将适配者适配到目标接口中;在对象适配器模式中,一个适配器可以将多个不同的适配者适配到同一个目标。
装饰(decorator)模式。装饰模式是一种对象结构型模式,可动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活。通过装饰模式,可以在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责;当需要动态地给一个对象增加功能,这些功能可以再动态地被撤销时可使用装饰模式;当不能采用生成子类的方法进行扩充时也可使用装饰模式。
代理(proxy)模式。代理模式是一种对象结构型模式,可为某个对象提供一个代理,并由代理对象控制对原对象的引用。代理模式能够协调调用者和被调用者,能够在一定程度上降低系统的耦合度,其缺点是请求的处理速度会变慢,并且实现代理模式需要额外的工作。
适配器(adapter)模式。适配器模式将一个接口转换成客户希望的另一个接口,从而使接口不兼容的那些类可以一起工作。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。在类适配器模式中,通过使用一个具体类将适配者适配到目标接口中;在对象适配器模式中,一个适配器可以将多个不同的适配者适配到同一个目标。
装饰(decorator)模式。装饰模式是一种对象结构型模式,可动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活。通过装饰模式,可以在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责;当需要动态地给一个对象增加功能,这些功能可以再动态地被撤销时可使用装饰模式;当不能采用生成子类的方法进行扩充时也可使用装饰模式。
代理(proxy)模式。代理模式是一种对象结构型模式,可为某个对象提供一个代理,并由代理对象控制对原对象的引用。代理模式能够协调调用者和被调用者,能够在一定程度上降低系统的耦合度,其缺点是请求的处理速度会变慢,并且实现代理模式需要额外的工作。
相关考题:
以下关于面向对象设计的叙述中,错误的是( )。A.类的属性用于封装数据,类的方法用于封装行为B.面向对象设计的基本思想包括抽象、封装和可扩展性C.对象继承和多态可用来实现可扩展性D.对象持久化是指将数据库中的数据加载到内存中供应用程序访问
若需要对一个对象结构中的对象进行很多不同的并且不相关的操作,而你想避免让这些操作“污染”这些对象的类,那么应选择哪种设计模式?(30)。A.职责链模式B.中介者模式C.访问者模式D.适配器模式
图4-6示意的为(48)设计模式,表示一个作用于某对象结构中的各元素的操作。A.Visitor(访问者)B.Observer(观察者)C.Flyweight(享元)D.Prototype(原型)
创建型设计模式抽象了实例化过程,它分为面向类和面向对象两种。其中,( )模式是保证一个类仅有一个实例,并提供一个访问它的全局访问点。A.工厂(Factory)B.构建器(Builder)C.原型(Prototype)D.单例(Singleton)
下面的UML类图描绘的是( )设计模式。关于该设计模式的叙述中,错误的是(请作答此空)。A.该设计模式中的Observer需要维护至少一个Subject对象B.该设计模式中的ConcreteObserver可以绕过Subject及其子类的封装C.该设计模式中一个Subject对象需要维护多个Observer对象D.该设计模式中Subject需要通知Observer对象其自身的状态变化
以下关于Singleton(单例)设计模式的叙述中,不正确的是( )。A.单例模式是创建型模式 B.单例模式保证一个类仅有一个实例 C.单例类提供一个访问唯一实例的全局访问点 D.单例类提供一个创建一系列相关或相互依赖对象的接口
以下设计模式中,( )模式使多个对象都有机会处理请求。将这些对象连成一条链。并沿着这条链传递该请求。直到有一个对象处理为止。从而避免请求的发送者和接收者之间的耦合关系。( )模式提供一种方法顺序访问一个聚合对象中的各个元素。且不需要暴露该对象的内部表示。这两种模式均为(请作答此空)A.创建型对象模式B.结构型对象模式C.行为型对象模式D.行为型类模式
按照设计模式的目的进行划分,现有的设计模式可以分为三类。其中创建型模式通过采用抽象类所定义的接口,封装了系统中对象如何创建、组合等信息,其代表有(请作答此空 )模式等;( )模式主要用于如何组合己有的类和对象以获得更大的结构,其代表有 Adapter 模式等;( )模式主要用于对象之间的职责及其提供服务的分配方式,其代表有( )模式等。 A. DecoratorB. Fly weightC. CommandD.Singleton
按照设计模式的目的进行划分,现有的设计模式可以分为三类。行为型模式主要用于对象之间的职责及其提供服务的分配方式,其代表有()模式等。 A. PrototypeB. FacadeC. ProxyD. Visitor
使用“应用于”选项控制继承时,不仅指定的对象会继承访问控制项,所有子对象也将接收该访问控制项的副本。如果有足够的对象将获取该访问控制项的副本,则增加的数据量会导致()。A、设置不能保存B、权限被限制C、网络性能问题D、禁止访问资源
单选题使用“应用于”选项控制继承时,不仅指定的对象会继承访问控制项,所有子对象也将接收该访问控制项的副本。如果有足够的对象将获取该访问控制项的副本,则增加的数据量会导致()。A设置不能保存B权限被限制C网络性能问题D禁止访问资源
单选题不同级别的用户对同一对象有不同的访问权利或某个客户端不能直接操作到某个对象,但又必须和那个对象有所互动,这种情况最好使用什么设计模式()AFactory模式BBridge模式CProxy模式DAdapter模式