From charlesreid1

Default keyword helps to make Java/Interfaces work a little bit more like Java/Abstract Classes.

It's a new feature in Java 8 which allows an interface to provide an implementation. Described in Java 8 JLS-13.5.6. Interface Method Declarations which reads (in part)

"Adding a default method, or changing a method from abstract to default, does not break compatibility with pre-existing binaries..."

"Default methods enable new functionality to be added to the interfaces of libraries and ensure binary compatibility with code written for older versions of those interfaces."

- source

See also: