An interface is a reference type in Java, it is similar to category, it is a collection of subjective techniques. A category implements an interface, thereby inheriting the subjective types of the interface.

Along with subjective techniques an interface may also contain constants, default techniques, static techniques, and nested types. Method bodies exist only for default techniques and static techniques.
Read More:What is Java Interface And how does it Work?