A class that implements an interface acquires a special quality, which Interfaces are called Marker or Tagged Interfaces.
for example: The class implements the Runnable interface, which the class acts like Thread. therefore, it is called the marker interface.
A class implements java.io.Serializable interface that clsass act to send object class which is needed at run time by JVM while storing/marshaling that object. A Class implements java.lang.Clonable interface that object ready to cloning. so java.lang.Clonabel interface is called Marker or Taged interface.
Some people believe that all empty interfaces are Marker interfaces. But this is wrong.
Since we take the java.lang.Runnable Interface, this is not an empty interface that it contains a method called void run ().
in java API maximum all marker Interfafes are empty, like java.io.Serializable.
Some Marker interfaces or not empty, like java.lang.Runnable.
source share