マーカーインタフェース

マーカーインタフェース (marker interface) とは、オブジェクト指向プログラミングにおいて、メソッドやフィールドが一切定義されていないインタフェース。

Javaではオブジェクトをシリアライズできることを示すSerializable、Objectのclone()メソッドが呼び出せることを示すCloneable、リストにおいて高速なランダムアクセスを実現するRandomAccessがある。 いずれもinstanceofの右オペランドとして使用され、インスタンスのクラスごとに実装を選択するなど、実行時にオブジェクトに関する「ヒント」を得るために使われている。

Javaにおけるマーカーインタフェースの書き方の例を示す。

interface SomeMarkerInterface { 
}

関連項目

  • マーカー
  • インタフェース (抽象型)
  • アノテーション - コンパイル時または実行時にプログラミング要素に関するヒントを得るために使われる。マーカーインタフェースはクラスや他のインタフェースにのみ付与できるのに対し、アノテーションはより広い範囲に付与することができる。
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.