I came across few design constructs in a large application:
- independent use of abstract classes
- independent use of interfaces
- abstract class implementing an interface
- interface including another interface
Being new to java, I really would appreciate if anyone could exactly pinpoint the leverage/advantage of one over the other in specific situations. What we miss if we dont use such constructs?