Java Inheritance Possibilities Tutorial
Especially beginners will be confused about the possibilities of extending classes or implementing interfaces into another class. Here we are going to summarize all the possibilities into one place so that anyone can refer and memorize easily.
Common Questions
- Can we extends multiple abstract classes into one concrete class?
- Can we extends abstract class into a abstract class?
- Can we implement multiple interfaces into a abstract class or a concrete class?
- Can we extends concrete class into a abstract class?
To read more about these things, please refer Java abstract classes.
Inheritance Possibilities Matrix
| Child class | Possible parents | |||||
|---|---|---|---|---|---|---|
| Single concrete class | Multiple concrete classes | Single abstract class | Multiple abstract classes | Single interface | Multiple interfaces | |
| Concrete class | ✔ | ✘ | ✔ | ✘ | ✔ | ✔ |
| Abstract class | ✔ | ✘ | ✔ | ✘ | ✔ | ✔ |
| Interface | ✘ | ✘ | ✘ | ✘ | ✔ | ✔ |