what is a java interface
An interface in Java programming language is an abstract type that is used to specify an interface (in the generic sense of the term) that classes must implement. class that implements an interface must implement all of the methods described in the interface, or be an abstract class. Object references in Java may be specified to be of an interface type; in each case, they must either be null, or be bound to an object that implements the interface.