As you may be aware Java does not support multiple inheritance. When using abstract classes you need your class to inherit from the abstract class. Since you can inherit from one class only, it limits the scope for your design.
Java supports multiple inheritance by using interfaces. Interfaces have to have all abtract methods ( unlike abstract classes that can have some concrete methods). A class can implment a number of interfaces thus giving a sort of multiple inheritance.