An interface in Java is a blueprint of a class that defines static constants and abstract methods. Interfaces are used to achieve abstraction and multiple inheritance in Java. An interface can only contain abstract methods without a method body. A class implementing an interface must implement all the methods declared in the interface. Interfaces allow for achieving loose coupling between classes.