Interfaces

Interfaces in Kotlin can contain declarations of abstract method or method implementations, what makes them different from abstract classes is that interfaces can’t store state. To start a interfaces you have to use the keyword ‘interface’ and to implement an interface or interfaces to a class or object:

The property declared in an interface can be abstract or it can provide implementations, it can’t have backing fields and accessors declared in interfaces can’t reference them.

The interface inheritance is too similar to java