setterメソッド 【setter method】 セッターメソッド / setアクセサ / set accessor
概要
setterメソッド(setter method)とは、オブジェクト指向プログラミングで、オブジェクト内部のメンバ変数(属性、プロパティ)に外部から書き込むために用意されたメソッド。メンバ変数をオブジェクト内部に隠蔽し、外部から直接参照させないようにする。オブジェクト指向においてインスタンス内の変数などは内部の状態を表すものであり、外部から直に参照したり操作したりすべきでないという考え方がある。外部から必要とされる変数についてはアクセス用のメソッドを用意して呼び出してもらうことで、変数自体は公開せずにアクセスできるようになる。
そのようなメンバ変数アクセス用のメソッド群のことを「アクセサ」(accessor)と呼ぶ。このうち、外部からメンバ変数に値を代入(書き込み)するために用意されたものをsetterメソッドという。慣例として「set変数名」と命名されることが多く、実行すると引数に指定された値を名前が示す変数に代入する。機能や名称が定型的であるため、言語や開発ツールによってはsetterメソッドを自動生成してくれる機能が用意されていることもある。
一方、アクセサのうちメンバ変数の値を取得(読み取り)するために用意されたものは「getterメソッド」あるいは「getアクセサ」「リーダー」(reader)などと呼ぶ。「get変数名」などのメソッド名で、実行すると名前で示されるメンバ変数の値を返す。
(2022.12.22更新)