IPA過去問ドリル

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

テクノロジ/開発技術

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

出典:令和元年度 秋期 システムアーキテクト試験 午前Ⅱ 問4

正解:ア

解説

オーバーライドは,スーパークラス(親クラス)で定義されたメソッドと同じシグネチャ(メソッド名,引数の型と個数)をもつメソッドを,サブクラス(子クラス)で再定義し,処理内容を置き換えることです。Java サーブレットの doGet や doPost も,シグネチャを変えずに処理内容だけを実装(オーバーライド)することで,目的の機能を実現します。

選択肢ごとの解説

  • 正しい。シグネチャを変えずに処理内容を置き換えるのは,オーバーライドの説明です。
  • 誤り。オーバーロードは,同じメソッド名で引数の型や個数(シグネチャ)が異なる複数のメソッドを定義することであり,シグネチャを変えない置き換えとは異なります。
  • 誤り。カプセル化は,データとそれを操作する手続きを一つにまとめ,内部構造を外部から隠蔽する概念であり,メソッドの置き換えとは異なります。
  • 誤り。継承は,スーパークラスの特性(属性やメソッド)をサブクラスが引き継ぐ仕組みであり,メソッドの置き換えそのものを指す用語ではありません。
システムアーキテクトの過去問を演習モードで解く