某系统中的文本显示类(TextView)和图片显示类(PictureView)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条或者带有黑色边框,或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加3个类。 那么采用设计模式(35)可实现该需求,其优点是(36)。A.外观B.单体C.装饰D.模板方法

题目

某系统中的文本显示类(TextView)和图片显示类(PictureView)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条或者带有黑色边框,或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加3个类。 那么采用设计模式(35)可实现该需求,其优点是(36)。

A.外观

B.单体

C.装饰

D.模板方法


相似考题
更多“某系统中的文本显示类(TextView)和图片显示类(PictureView)都继承了组件类(Component),分别显示 ”相关问题
  • 第1题:

    某系统中的文本显示类(Text View)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条或者带有黑色边框,或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加3个类。那么采用设计模式( )可实现该需求

    A.外观
    B.单体
    C.装饰
    D.模板方法

    答案:C
    解析:
    装饰(Decorator)模式可以再不修改对象外观和功能的情况下添加或者删除对象功能。它可以使用一种对客户端来说是透明的方法来修改对象的功能,也就是使用初始类的子类实例对初始对象进行授权。装饰模式还为对象动态地添加了额外的重任,这样就在不使用静态继承的情况下,为修改对象功能提供了灵活的选择。在以下情况中,应该使用装饰模式:想要在单个对象中动态并且透明地添加责任,而这样并不会影响其他对象;想要在以后可能要修改的对象中添加责任;当无法通过静态子类化实现扩展时。

  • 第2题:

    请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用( )设计模式能够有效达到该目的:该系统中的某子模块需要为其他模块捉供访问不同数据库系统(如Oracle、SQL Server和DB2 UDB等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库、再打开数据库、最后对数据进行查询,(请作答此空)设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,( )计模式可以实现该目的。

    A.外观
    B.装饰
    C.单件
    D.模板方法

    答案:D
    解析:
    本题考查设计模式的基本应用。
    面向对象系统中的某些类有且只有一个实例,该场景的描述与单件模式的定义相同。系统中的某子模块需要为其他模块提供访问不同数据库系统(如Oracle、SQL Server和DB2 UDB等),的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询,该场景描述了对数据库进行操作的步骤是相同的。但是,具体的每个步骤根据不同的数据库系统会存在一定差异,例如数据库提供的接口函数不同,模板方法正是将步骤过程抽象出来,而每个具体操作步骤的差异留到具体的子类去实现。系统中的文本显示类(TextView)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,该场景限定了能够增加的类的数量。可以通过新增加三个类,分别继承组件类并实现给组件增加黑色边框、滚动条以及增加黑色边框和滚动条功能,因为文本显示类和图片显示类都属于组件类,因此,新增加的三个类能够给文本显示对象和图片显示对象增加额外的显示功能,该实现手段采用的就是装饰模式。

  • 第3题:

    某系统中的文本显示类(Text View)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条或者带有黑色边框,或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加3个类。那么采用设计模式(1)可实现该需求,其优点是(2)。【回答括号2】

    A.. 比静态继承具有更大的灵活性
    B. 提高已有功能的重复使用性
    C. 可以将接口与实现相分离
    D. 为复杂系统提供了简单接口

    答案:A
    解析:
    装饰(Decorator)模式可以再不修改对象外观和功能的情况下添加或者删除对象功能。它可以使用一种对客户端来说是透明的方法来修改对象的功能,也就是使用初始类的子类实例对初始对象进行授权。装饰模式还为对象动态地添加了额外的重任,这样就在不使用静态继承的情况下,为修改对象功能提供了灵活的选择。

    在以下情况中,应该使用装饰模式:

    ?想要在单个对象中动态并且透明地添加责任,而这样并不会影响其他对象;

    ?想要在以后可能要修改的对象中添加责任;

    ?当无法通过静态子类化实现扩展时。

  • 第4题:

    某系统中的文本显示类(Text View)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条或者带有黑色边框,或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加3个类。其优点是( )。

    A.比静态继承具有更大的灵活性
    B.提高已有功能的重复使用性
    C.可以将接口与实现相分离
    D.为复杂系统提供了简单接口

    答案:A
    解析:
    装饰(Decorator)模式可以再不修改对象外观和功能的情况下添加或者删除对象功能。它可以使用一种对客户端来说是透明的方法来修改对象的功能,也就是使用初始类的子类实例对初始对象进行授权。装饰模式还为对象动态地添加了额外的重任,这样就在不使用静态继承的情况下,为修改对象功能提供了灵活的选择。在以下情况中,应该使用装饰模式:想要在单个对象中动态并且透明地添加责任,而这样并不会影响其他对象;想要在以后可能要修改的对象中添加责任;当无法通过静态子类化实现扩展时。

  • 第5题:

    某系统中的文本显示类(Text View)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条或者带有黑色边框,或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加3个类。那么采用设计模式(1)可实现该需求,其优点是(2)。【回答括号1】

    A.. 外观
    B. 单体
    C. 装饰
    D. 模板方法

    答案:C
    解析:
    装饰(Decorator)模式可以再不修改对象外观和功能的情况下添加或者删除对象功能。它可以使用一种对客户端来说是透明的方法来修改对象的功能,也就是使用初始类的子类实例对初始对象进行授权。装饰模式还为对象动态地添加了额外的重任,这样就在不使用静态继承的情况下,为修改对象功能提供了灵活的选择。

    在以下情况中,应该使用装饰模式:

    ?想要在单个对象中动态并且透明地添加责任,而这样并不会影响其他对象;

    ?想要在以后可能要修改的对象中添加责任;

    ?当无法通过静态子类化实现扩展时。