The Benefits of Interfaces
Interfaces are commonly used to provide polymorphic behavior, and this is of course a valid use.
Interfaces provide many advantages to the Java programmer
1.One is that they allow standard sets of methods to be used across the class hierarchy.
2.Interface types allow objects to be referenced by the methods they support without considering their location in the class hierarchy
3.They make maximal use of dynamic binding, allowing objects to be accessed independently of their implementation details.
4.Interfaces also support selective multiple inheritance.
5.Because interfaces are declared independently of classes, they are unaffected by changes to specific classes or to the class hierarchy as a whole.