メソッドとは?めそっど
メソッドとは、オブジェクト指向で、クラス(データと操作をまとめた設計図)が持つデータに対して行える操作を定義したもの。属性(データ)とメソッド(操作)を1つのクラスにまとめ、外部からは公開したメソッドを通してしか属性を触らせないことで、カプセル化(中身を隠して決めた入口だけで扱わせること)が成り立つ。オブジェクトへ処理を頼むことをメッセージの送信と表現する。
最終更新:2026-10-09
この語が出る過去問を解く →背景
データと、それを扱う処理をばらばらに置くと、データの持ち方を変えたときに触る箇所が全体へ散らばる。誰がどう更新しているかも追えず、不正な値が入り込む。データとその正しい扱い方を同じ場所に閉じ込め、外からは決められた入口だけを使わせる——この方針を実際のプログラムで実現する部品として置かれたのがメソッドで、公開の範囲を絞ることが設計の要点になる。
具体例
Javaの標準ライブラリでは、文字列を表すStringクラスがlengthやsubstringといったメソッドを持ち、内部の文字の並びを直接触らせずに操作させる。銀行口座を表すクラスなら、残高を直接書き換えず入金・出金のメソッド経由で更新する。
試験での引っ掛け
クラス(設計図)とインスタンス(設計図から作った実物)の区別と併せて問われる。メソッドの定義はクラス側にあり、実行されるのは個々のインスタンスに対してである。オーバーロードは引数の違いで同名のメソッドを使い分けること、オーバーライドは継承先で定義を上書きすることで、両者は別物である。
関連用語
出た過去問
出典:平成29年度 秋期 基本情報技術者試験 午前 問7(IPA)
オブジェクト指向プログラミングにおける、多相性を実現するためのオーバーライドの説明はどれか。
正解:スーパークラスで定義されたメソッドをサブクラスで再定義すること
要点:オーバーライドはスーパークラスのメソッドをサブクラスで再定義
オーバーライドは、スーパークラスで定義済みのメソッドを、同じ名前・同じ引数のままサブクラス側で定義し直すことをいう。これにより同じメソッド呼出しでも実際のオブジェクトの型に応じて振る舞いが変わり、多相性(ポリモーフィズム)が実現される。引数違いで同名メソッドを並べるオーバーロードとの区別が頻出である。
出典:令和4年度 公開問題 基本情報技術者試験 科目A 問38(IPA)
オブジェクト指向プログラムにおいて、データとメソッドを一つにまとめ、オブジェクトの実装の詳細をユーザから見えなくすることを何と呼ぶか。
正解:カプセル化
要点:カプセル化はデータと手続きをまとめて実装を隠すこと
カプセル化は、データとそれを操作する手続きを一つのまとまりとして扱い、内部の実装を外部から隠す考え方である。利用者は公開された手続きを通してのみ操作するため、内部の作りを変えても外部に影響が及びにくく、保守性が高まる。
出典:令和4年度 公開問題 基本情報技術者試験 科目B 問8(IPA)
次の記述中の に入れる正しい答えを、解答群の中から選べ。 優先度付きキューを操作するプログラムである。優先度付きキューとは扱う要素に優先度を付けたキューであり、…
正解:"A", "C", "D", "D"
要点:優先度付きキューは優先度順、同順位は先入れ先出し
優先度は数値が小さいほど高く、同じ優先度なら先に入れたものが先に出ます。前半でA(1)とB(2)が取り出され、次にD(3)とB(2)を追加した状態から、優先度2のC、続いて後から入れたB(2)が取り出されます。残ったD(3)とD(3)にC(2)とA(1)を加えて最後まで出力すると、A、C、D、Dの順になります。
出典・参考
公式シラバスの4 開発技術 > 2. 設計 > (9) ソフトウェア設計手法に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。