An interface is a collection of method names, without definitions, that can be added to classes to provide additional behavior not included with those methods the class defined itself or inherited from its superclasses. |
|
The problem with multiple inheritance is that it makes a programming language far more complex to learn, to use, and to implement. |
|
A Java interface is a collection of abstract behavior that can be mixed into any class to add to that class behavior that is not supplied by its superclasses. Specifically, a Java interface contains nothing but abstract method definitions and constants-no instance variables and no method implementations. |
|
Interfaces are implemented and used throughout the Java class library whenever a behavior is expected to be implemented by a number of disparate classes. |
|
The Java class hierarchy, for example, defines and uses the interfaces java.lang.Runnable |
|
java.util.Enumeration, |
java.util.Observable, |
java.awt.image.ImageConsumer, and java.awt.image.ImageProducer. |