令和5年度 春期 システムアーキテクト試験 午前Ⅱ 問5

テクノロジアルゴリズム

この問題は2023(R5)春 システムアーキテクト 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。

本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。

Java サーブレットを用いた Web アプリケーションソフトウェアの開発では,例えば,doGet や doPost などのメソッドを,シグネチャ(メソッド名,引数の型・個数・順序)は変えずに,目的とする機能を実現するための処理に置き換える。このメソッドの置き換えを何と呼ぶか。

解答・解説を読む

正解: 選択肢

正解は オーバーライド です。

オブジェクト指向プログラミングにおいて、親クラス(スーパークラス)で定義されているメソッドを、子クラス(サブクラス)で シグネチャ(メソッド名、引数の型・個数・順序)を変えずに 独自の処理に書き換える(再定義する)ことを オーバーライド と呼びます。
Javaサーブレットの開発では、HttpServlet クラスなどを継承し、同クラスに用意されている doGetdoPost メソッドをオーバーライドすることで、HTTPリクエストに対する処理を実装します。

各選択肢の解説

  • ア オーバーライド: 正解。親クラスのメソッドを、子クラスで同じシグネチャのまま再定義することです。
  • イ オーバーロード: 誤り。同一クラス内で、メソッド名は同じでも 引数の型や個数が異なる メソッドを複数定義することです。
  • ウ カプセル化: 誤り。オブジェクトのデータ(プロパティ)と処理(メソッド)を一つにまとめ、外部からの直接的なアクセスを制限(隠蔽)するオブジェクト指向の概念です。
  • エ 継承: 誤り。既存のクラス(親クラス)のデータやメソッドを引き継いで、新しいクラス(子クラス)を作成することです。オーバーライドは継承を前提として行われますが、メソッドの置き換え自体を指す言葉ではありません。