What is the difference between an abstract class and an interface?
Interfaces cannot contain implementation of methods whereas abstract classes can.
In both cases, they can not be directly instantiated – a class must implement the interface, or a class must derive from the abstract class.
