标记接口是没有任何方法和属性的接口,它仅仅表明它的类属于一个特定的类型,供其他代码来测试允许做一些事情。

    标记接口定义:没有任何方法的接口被称为标记接口。

    标记接口作用:简单形象的说就是给某个对象打个标(盖个戳),使对象拥有某个或某些特权。

    标记接口主要用于以下两种目的:
    1、建立一个公共的父接口: 正如EventListener接口,这是由几十个其他接口扩展的Java API,你可以使用一个标记接口来建立一组接口的父接口。
    例如:当一个接口继承了EventListener接口,Java虚拟机就知道该接口将要被用于一个事件的代理方案。

    2、向一个类添加数据类型: 这种情况是标记接口最初的目的,实现标记接口的类不需要定义任何接口方法(因为标记接口根本就没有方法),但是该类通过多态性变成一个接口类型。

    Example:

    1. package java.util;
    2. /**
    3. * A tagging interface that all event listener interfaces must extend.
    4. * @since 1.1
    5. */
    6. public interface EventListener {
    7. }