专注在线职业教育23年
下载APP
小程序
希赛网小程序
导航

2022上半年软件设计师下午真题(六)

责编:胡媛 2022-05-29

为方便广大考生考后估分对答案,希赛网特向广大学员和网友搜集整理了2022上半年软件设计师下午真题(六),供大家参考。希赛网老师也将在考后进行真题答案解析,敬请广大考生关注。

试题六(共15分)

阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

在软件系统中,通常都会给用户提供取消、不确定或者错误操作的选择,允许将系统恢复到原先的状态。现使用备忘录(Memento)模式实现该要求,得到如图6-1所示的类图。Memento包含了要被恢复的状态。Originator创建并在Memento中存储状态。Caretaker负责从Memento中恢复状态。

image.png

图6-1类图

【Uava代码】

import java.util.*;

class Memento {

private String state;

public Memento(String state){this.state=state;}

public String getState(){return  state;}

}

class Originator{

private String state;

public void setState(String state){this.state=state;}

public String  getState(){ retum state;}

public Memento saveStateToMemento(){

Return (1)

}

public void getStateFromMemento(Memento Memento){

state =(2)

}

class CareTaker

Public(3)

mementoLstadd如aney

}

public (4)

return memensoLint get (imdat

}

}

image.png

class MementoPaneDems{

pubic static voiid main(Stringf]

Ohgiator aniginutor-te Origmrfy

CareThker careTukeznwCmiie)

aniginuntorseStte(State1#)

orginxtorsCSuat(State2#);

careThiket  add_(5)

oiginatoseSated"(State 3")

careTaker add (6)_

originutor_setState(State#4)

image.png

(1) new Memento(state)

(2) Memento.getState()

(3) void add(Memento state)

(4) Memento get(int index)

(5) care Taker.add(originator.saveState ToMemento()

(6) care Taker.add(originator.saveState ToMemento()

相关推荐:2022上半年软件设计师下午真题及答案解析

热点推荐:2022上半年软件设计师真题及答案解析

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关阅读
查看更多

加群交流

公众号

客服咨询

考试资料

每日一练

咨询客服