メソッド (計算機科学)
アクセサ (accessor) とは、特にオブジェクトが持つフィールドに間接的にアクセスするために定義されるメソッドの総称である。フィールドに値の設定 (set) をするメソッドをsetter、フィールドから値の取得 (get) をするメソッドをgetterと呼ぶ。通例、個々のフィールドに対して、個別のアクセサが用意される(2つ以上のフィールドをまとめて設定/取得するようなものは一般的にアクセサとは呼ばれない)。つまり、setterは単一の入力を持ち、getterは単一の出力を持つ。1つのフィールドに対してsetter/getterが対称的に両方用意されることもあれば、片方だけが用意されることもある。日本語ではアクセサー、アクセッサあるいはアクセッサーとも表記する。C# 9では、オブジェクト構築時にのみ呼び出せるinitアクセサを定義することもできる。
Javaのインスタンスメソッドは常に仮想であるが、クラスメソッド(静的メソッド)はオーバーライドすることのできない非仮想であるため、静的メソッドのほうが呼び出しコストが小さく、パフォーマンス上のメリットがある。
Javaのfinal修飾子は、パフォーマンス上の理由というよりはむしろ、派生クラスでの不用意なオーバーライドを禁止してバグを未然に防止することにある。「Javaではメソッドをfinal修飾することでコンパイラの最適化によりパフォーマンスが向上する」という神話があるが、一方で、Java仮想マシンの性能によってはメソッドをfinalと宣言したからといって優れたパフォーマンスが得られるとは限らないという指摘もある。なお、OracleのHotSpot VMは、finalメソッドを検出して非常に効率よく実行できるように最適化されていると説明されている。