[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f7nUSS5R9AYabhLR3-rHIZfaDtVyR8HMv_hC6mWqQUT0":3},{"answer":4,"createTime":5,"id":6,"options":7,"origin":12,"question":19,"related":20,"source":30,"type":31},[],"2023-06-09 10:54:42",54712983,[8,9,10,11],"构件","主题","目标","接收者",{"count":13,"courseId":14,"courseImg":15,"courseName":16,"workId":17,"workName":18},35,"806941673370dffa0828dd61046fc578","https:\u002F\u002Ftihai-oss-cloud.itihey.com\u002Fimg\u002F7e2d5ad53be3d12aacc56ee37db405b7.jpg","软件设计模式","work_28172254","第四章整章测验","下面哪个角色是属于观察者模式",[21,32,41,50,57,66,75,84,90,99],{"answer":22,"createTime":5,"id":23,"options":24,"question":29,"source":30,"type":31},[],54712974,[25,26,27,28],"2","0","1","3","命令模式、代理模式、工厂模式、装饰模式、观察者模式 这5个模式中,属于行为型模式的有几个","v1",0,{"answer":33,"createTime":5,"id":34,"options":35,"question":40,"source":30,"type":31},[],54712975,[36,37,38,39],"关注如何将现有类或对象组织在一起形成更加强大的结构","关注系统中对象之间的交互,研究系统在运行时对象之间的相互通信与协作,进一步明确对象的职责","处理对象间的关系,这些关系在运行时变化,更具动态性","主要用于创建对象,关注对象的创建过程的一系列模式","对行为型模式说法正确的是",{"answer":42,"createTime":5,"id":43,"options":44,"question":49,"source":30,"type":31},[],54712976,[45,46,47,48],"不同的时间指定请求,并将请求排队","实现撤销(Undo)操作和恢复(Redo)操作","不改变聚合类的前提下定义作用于聚合中元素的新操作","将请求的发送者和接收者解耦","在( )时无须使用命令模式",{"answer":51,"createTime":5,"id":52,"options":53,"question":56,"source":30,"type":31},[],54712977,[54,8,10,55],"Invoker(调用者)","工厂","以下角色属于命令模式的是",{"answer":58,"createTime":5,"id":59,"options":60,"question":65,"source":30,"type":31},[],54712978,[61,62,63,64],"&quot;请求&quot;是具体命令,&quot;命令&quot;是具体命令","&quot;请求&quot;是具体命令,&quot;命令&quot;是抽象命令","&quot;请求&quot;是抽象命令,&quot;命令&quot;是具体命令","&quot;请求&quot;是抽象命令,&quot;命令&quot;是抽象命令","命令模式的本质是对请求进行封装,一个&quot;请求&quot;对应于一个&quot;命令&quot;,将发出命令的责任和执行命令的责任分开.在这句话中,打引号处的两个词&quot;请求&quot;和&quot;命令&quot;的说法正确的是",{"answer":67,"createTime":5,"id":68,"options":69,"question":74,"source":30,"type":31},[],54712979,[70,71,72,73],"当对一个对象的改变需要同时改变其它对象,而不知道具体有多少对象有待改变时","一个对象结构包含很多类对象,它们有不同的接口,而想对这些对象实施一些依赖于其具体类的操作","当一个对象的功能不能满足实际需要,需要动态的增加额外的功能时","当一个抽象模型存在两个方面,其中一个方面依赖于另一方面,将这二者封装在独立的对象中以使它们可以各自独立地改变和复用","观察者模式适用于( )",{"answer":76,"createTime":5,"id":77,"options":78,"question":83,"source":30,"type":31},[],54712980,[79,80,81,82],"避免将一个请求的发送者与接收者耦合在一起,让多个对象都有机会处理请求.将接收请求的对象连接成一条链,并且沿着这条链传递请求,直到有一个对象能够处理它为止","将一个请求封装为一个对象,从而让你可以用不同的请求对客户进行参数化,对请求排队或者记录请求日志,以及支持可撤销的操作","允许一个对象在其内部状态改变时改变它的行为.对象看起来似乎修改了它的类","定义对象之间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象都得到通知并被自动更新","下列哪一个描述的是命令模式",{"answer":85,"createTime":5,"id":86,"options":87,"question":89,"source":30,"type":31},[],54712981,[88,81,79,82],"提供一种方法顺序访问一个聚合对象中的各个元素,且不用暴露该对象的内部表示","下面哪种描述最符合观察者模式",{"answer":91,"createTime":5,"id":92,"options":93,"question":98,"source":30,"type":31},[],54712982,[94,95,96,97],"具体目标中应该有一个自我改变状态的方法 和 一个通知所有 观察者改变状态的方法","抽象目标中应该有一个保存观察者对象的集合,应该有增减观察者的两个具体方法 和一个抽象的通知方法","具体观察者应该有一个 具体的更新自身状态的方法,并且,为了响应与观察目标的联动,还需有一个监控观察者目标发生状态改变的联动方法","抽象观察者应该有一个抽象的更新观察者自身状态的方法","下面关于观察者模式通用类图的说法,不正确的是",{"answer":100,"createTime":5,"id":6,"options":101,"question":19,"source":30,"type":31},[],[8,9,10,11]]