Yes, an abstract class can have a constructor in Java.
An interface is a collection of abstract methods that define a set of functions that a class must implement.
An interface defines a set of methods that a class must implement, but does not provide any implementation for those methods.