| 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. |
| |
| |
|