Abstract Classes and Interface
An Abstract class doesn't provide full abstraction but an interface does provide full abstraction; i.e. both a declaration and a definition is given in an abstract class but not so in an interface.
Using Abstract we can not achieve multiple inheritance but using an Interface we can achieve multiple inheritance.