
Image by Paul_Henri on Pixabay · Pixabay License
Article · 日本語
マーカーインタフェース (marker interface) とは、オブジェクト指向プログラミングにおいて、メソッドやフィールドが一切定義されていないインタフェース。 Javaではオブジェクトをシリアライズできることを示す<a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/jp/9/docs/api/java/io/Serializable.html">Serializable</a>、<a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/jp/9/docs/api/java/lang/Object.html">Object</a>のcloneメソッドが呼び出せることを示す<a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/jp/9/docs/api/java/lang/Cloneable.html">Cloneable</a>、リストにおいて高速なランダムアクセスを実現する<a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/jp/9/docs/api/java/util/RandomAccess.html">RandomAccess</a>がある。いずれも<span class="k">instanceof</span>の右オペランドとして使用され、インスタンスのクラスごとに実装を選択するなど、実行時にオブジェクトに関する「ヒント」を得るために使われている。 Javaにおけるマーカーインタフェースの書き方の例を示す。 interface SomeMarkerInterface { }
Abstract from DBpedia / Wikipedia · CC BY-SA