什么是Java中的标记或标记接口

当父接口不包含任何方法时,将发生扩展接口的最常见用法。例如,java.awt.event包中的MouseListener接口扩展了java.util.EventListener,其定义为-

例 

package java.util;
public interface EventListener {}

其中没有方法的接口称为标记接口。标记接口有两个基本设计目的- 

创建一个共同的父母

与EventListener接口(由Java API中的许多其他接口扩展)一样,您可以使用标记接口在一组接口之间创建一个公共父级。例如,当接口扩展EventListener时,JVM知道该特定接口将在事件委托场景中使用。 

向类添加数据类型

标签就是术语这种情况的来源。实现标记接口的类不需要定义任何方法(因为该接口没有任何方法),但是该类通过多态性成为接口类型。