令和元年度 III-19

科目: 専門科目 / 分野: 情報工学部門 / 年度: 令和元年度

III-19 問題画像

出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」

シーケンス図をJavaプログラムで表現したとき、クラス(a)〜(c)に入るクラス名の組合せを選ぶ問題。

解説

この問題で問われていること

シーケンス図のメッセージとプログラムのメソッドを対応させ、各クラスを特定する問題。

解き方

① シーケンス図の矢印=送り手のメソッドの中で、受け手のメソッドを呼ぶ。メソッド名で持ち主のクラスを決める
② methodX()を持ち中でmethodY()を呼ぶ(a)=ClassB、method1()でmethodX()を呼びmethodZ()を持つ(b)=ClassA、methodY()を持ちmethodZ()を呼ぶ(c)=ClassC
③ ④

正解が正しい理由

図では、ClassAがClassBのmethodX()を呼び、ClassBがClassCのmethodY()を呼び、その後ClassCがClassAのmethodZ()を呼んでいる。(a)はmethodX()を持ち、その中でmethodY()を呼ぶのでClassB。(b)はmethodX()を呼ぶmethod1()とmethodZ()を持つのでClassA。(c)はmethodY()を持ち、methodZ()を呼ぶmethod2()を持つのでClassC。したがって④が正しい。

各選択肢について

覚えるべきポイント

シーケンス図の矢印の先のクラスがそのメソッドを持ち、矢印の元のクラスがそれを呼び出す処理を持つ。

キーワード: シーケンス図、UML、Java、メソッド呼出し、情報工学部門

出題履歴

類題(同じ論点の別問題)