基本情報技術者 2013年 秋期 午前(科目A) 問48
問題文
オブジェクト指向開発において、オブジェクトのもつ振る舞いを記述したものを何というか。
選択肢
ア:インスタンス
イ:クラス
ウ:属性
エ:メソッド(正解)
オブジェクトのもつ振る舞いを記述したものを何というか【午前2 解説】
要点まとめ
- 結論:オブジェクトのもつ振る舞いは「メソッド」と呼ばれ、外部から呼び出して動作を実行する要素です。
- 根拠:クラスが設計図、属性が状態を表す一方で、振る舞い(処理)はメソッドとして定義されます。
- 差がつくポイント:振る舞い=処理の記述という定義を押さえ、属性(値)と混同しない理解が合格の分かれ目です。
正解の理由
正解は エ(メソッド)です。オブジェクト指向で「振る舞い」はオブジェクトが行う処理や操作を指し、それを記述するものがメソッドです。クラスはインスタンスの設計図、属性はオブジェクトの状態(データ)を表すため、振る舞いを直接記述するのはメソッドに相当します。
よくある誤解
- 属性と振る舞いを混同する:属性はデータ(例:年齢、名前)であり、振る舞い(例:歩く、計算する)はメソッドです。
- クラスそのものが振る舞いだと思う:クラスは振る舞いを定義する場所だが、振る舞いそのものを指す言葉ではありません。
- インスタンス=振る舞いと誤認する:インスタンスはクラスから生成された具体的なオブジェクトで、振る舞いを「持つ」主体です。
解法ステップ
- 設問のキーワード「振る舞い」を「オブジェクトが行う処理・動作」と読み替えます。
- 選択肢をそれぞれ定義と照合します(インスタンス=実体、クラス=設計図、属性=状態、メソッド=処理)。
- 振る舞いに最も対応する定義が「メソッド」であることを確認し選びます。
選択肢別の誤答解説
- ア: インスタンス
誤り。インスタンスはクラスから生成された具体的なオブジェクトであり、振る舞いを実行する主体ですが「振る舞いそのもの」を表す用語ではありません。 - イ: クラス
誤り。クラスは属性やメソッドを定義する設計図であり、振る舞いを「定義する場所」であって振る舞い自体ではありません。 - ウ: 属性
誤り。属性はオブジェクトの持つデータ(状態)を表す項目で、振る舞い(処理)とは役割が異なります。 - エ: メソッド
正解。メソッドはオブジェクトが持つ操作や処理(振る舞い)を記述したものを指します。
補足コラム
オブジェクト指向設計では「データ(状態)」と「振る舞い(操作)」を同じオブジェクトにまとめることが基本です。UML(統一モデリング言語)ではクラス図において、クラスの上段に名前、中段に属性(フィールド)、下段にメソッド(操作)を記述します。試験問題では「振る舞い=メソッド」「状態=属性」「設計図=クラス」「実体=インスタンス」の対応を確実に暗記しておきましょう。
FAQ
Q. メソッドと関数は同じですか?
A. 概念的にはどちらも処理を表しますが、オブジェクト指向ではメソッドは特定のオブジェクト(またはクラス)に紐づく操作を指し、関数は独立した処理として扱われることが多いです。
A. 概念的にはどちらも処理を表しますが、オブジェクト指向ではメソッドは特定のオブジェクト(またはクラス)に紐づく操作を指し、関数は独立した処理として扱われることが多いです。
Q. プロパティは属性と同じですか?
A. プロパティは属性の一種で、ゲッター/セッターなどでアクセス制御された状態を指すことが多く、属性の具体的な実装や公開方法を強調した用語です。
A. プロパティは属性の一種で、ゲッター/セッターなどでアクセス制御された状態を指すことが多く、属性の具体的な実装や公開方法を強調した用語です。
Q. インターフェースに振る舞いは含まれますか?
A. はい。インターフェースはメソッドのシグネチャ(振る舞いの仕様)を定義し、具体的な振る舞いの実装はそれを実装するクラス側で行います。
A. はい。インターフェースはメソッドのシグネチャ(振る舞いの仕様)を定義し、具体的な振る舞いの実装はそれを実装するクラス側で行います。
関連キーワード: オブジェクト指向、メソッド、クラス、属性、インスタンス、振る舞い、UML、設計図、操作、フィールド

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

