What is the difference between interface and abstract class in Java?


Answer: Abstract classes can have methods with implementation whereas interface provides absolute abstraction and can't have any method implementations. Note that from Java 8 onwards, it's possible to create default and static methods in interface that contain the method implementations.