Since the Java 9 release is there any good reason to use abstract classes anymore? It seems like you can do everything with interfaces now, plus you can have multiple inheritance with interfaces.
- Constant variables
- Abstract methods
- Default methods
- Static methods
- Private methods
- Private Static methods
Am I missing something? I can't find any good reason except, probably, backward compatibility.