令和元年度 秋期 午前Ⅱ 問4
アルゴリズムとプログラミング
Javaサーブレットを用いたWebアプリケーションソフトウェアの開発では,例えば,doGetやdoPostなどのメソッドを,シグネチャ(メソッド名,引数の型と個数)は変えずに,目的とする機能を実現するための処理に置き換える。このメソッドの置き換えを何と呼ぶか。
- アオーバーライド
- イオーバーロード
- ウカプセル化
- エ継承
答えと解説を見る
✓ これが正解アオーバーライド
解説
シグネチャを変えずにメソッドの処理を置き換えるのはオーバーライドです。
見分ける軸は、メソッドのシグネチャ、つまりメソッド名と引数の型・個数を変えるかどうかです。上位のクラスで定義されたメソッドを、サブクラスで同じシグネチャのまま定義し直し、中身の処理を置き換えることをオーバーライドといいます。Javaサーブレットでは、用意されたクラスを継承し、doGetやdoPostを同じシグネチャで定義し直して、目的の処理を書き込みます。設問の置き換えはまさにこれに当たります。同じ名前で引数の型や個数を変えたメソッドを並べるのは別の仕組みなので、名前とシグネチャの両方が同じなら上書き、と覚えると混同しません。
ほかの選択肢はなぜ違うのか
- イオーバーロード:オーバーロードは、同じ名前のメソッドを、引数の型や個数を変えて複数定義することです。設問はシグネチャを変えずに処理を置き換えると明記しているので、引数の違いで使い分ける仕組みには当たりません。
- ウカプセル化:カプセル化は、データとそれを操作するメソッドを一つにまとめ、内部の詳細を外から直接触れないように隠すことです。メソッドの中身を同じシグネチャのまま入れ替える操作の呼び名ではありません。
- エ継承:継承は、既存のクラスの性質を引き継いで新しいクラスを定義する仕組みです。メソッドの置き換えは継承した先で行う操作ですが、置き換えそのものを指す呼び名は継承ではありません。
この問題の用語
- Webアプリケーションブラウザから使う、サーバ側で動くプログラムのことです。利用者の端末に専用ソフトを入れずに使え、更新もサーバ側で済みます。
- アプリケーションソフトウェア利用者の目的に直接こたえるソフトウェアで、表計算や会計、業務用の専用ソフトなどがあたります。機器そのものを動かす基本ソフトウェアの上で動きます。
出典:令和元年度 秋期 システムアーキテクト試験 午前Ⅱ 問4
同じ用語が出る問題
- 令和6年度 春期 午前Ⅱ 問3:マイクロサービスに関する問題(アプリケーションソフトウェア)
- 令和元年度 秋期 午前Ⅱ 問25:セキュアOSに関する問題(Webアプリケーション)
- 平成30年度 秋期 午前Ⅱ 問25(Webアプリケーション)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)