平成30年度 春期 午前 問7
基礎理論
メソッドを定義すること
オブジェクト指向プログラミングにおいて,同一クラス内に,メソッド名が同一であって,引数の型,個数又は並び順が異なる複数のメソッドを定義することを何と呼ぶか。
- アオーバーライド
- イオーバーロード
- ウカプセル化
- エ汎化
答えと解説を見る
✓ これが正解イオーバーロード
解説
同一クラス内で引数違いの同名メソッドを置くのがオーバーロードです。
設問は、同一クラス内に、名前が同じで引数の型や個数や並び順だけが異なる複数のメソッドを定義することの呼び名を尋ねています。この種の用語は、どこで起きる話なのかという場所を一語で取り出すと迷いません。ここで問われているのは同一クラスの中で完結する話であり、しかも引数が異なることが条件になっています。この二つをそろって満たすのがオーバーロードです。同じクラスの中に、たとえば整数を受け取るもの、文字列を受け取るもの、整数を二つ受け取るものを同じ名前で並べて置くことができ、どれが呼ばれるかは渡された引数の型と個数と並びで決まります。呼び分けはコンパイルの段階で決まるので、実行してみるまで分からないということはありません。場所が同一クラスの中なのか、それとも親と子のクラスにまたがるのか。この一点が分かれ目になります。
ほかの選択肢はなぜ違うのか
- アオーバーライド:親クラスのメソッドを子クラスで書き換えることを指す語です。舞台が親と子のクラスにまたがっており、しかも引数は同じままなので、設問が挙げた二つの条件がどちらも合いません。
- ウカプセル化:データと手続きを一つにまとめ、外から中身を見えないようにする考え方です。名前の付け方ではなく、内部を隠すという構造の側の話になります。
- エ汎化:複数のクラスに共通する性質を取り出して上位のクラスにまとめることです。クラスどうしの関係を整理する話であり、メソッドの名前や引数は関わってきません。
この問題の用語
- ログいつ誰が何をしたかを、機器やソフトウェアが自動で残していく記録です。あとから出来事をたどれるので、事故の調査や不正の発見に使われます。
出典:平成30年度 春期 応用情報技術者試験 午前 問7
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)