Java 8 allows for default implementation of methods in interfaces called Default Methods.
I am confused between when would I use that sort of interface default
interface default
These two are quite different:
Default methods are to add external functionality to existing classes without changing their state.
And abstract classes are a normal type of inheritance, they are normal classes which are intended to be extended.