What is adapter class? Explain advantages of adapter classes over listener interfaces with suitable example.
Java Adapter Classes
Java adapter classes provide the default implementation of listener interfaces. If you inherit the adapter class, you will not be forced to provide the implementation of all the methods of listener interfaces. So it saves code.
Pros of using Adapter classes:
- It assists the unrelated classes to work combinedly.
- It provides ways to use classes in different ways.
- It increases the transparency of classes.
- It provides a way to include related patterns in the class.
- It provides a pluggable kit for developing an application.
- It increases the reusability of the class.
The adapter classes are found in java.awt.event, java.awt.dnd and javax.swing.event packages.
2nd part
Any class which handles events must implement a listener interface for the event type it wishes to handle. A class can implement any number of listener interfaces. To implement a listener interface the class must implement every method in the interface.
Sometimes we may want to implement only one or two of the methods in an interface. We can avoid having to write our own implementation of all the methods in an interface by using an adapter class. An adapter class is a class that already implements all the methods in the corresponding interface. Our class must extend the adapter class by inheritance so we can extend only one adapter class in our class because Java does not support multiple inheritances. Here are the Java adapter classes and the listener interfaces they implement. We can notice that adapters exist for only listener interfaces with more than one method.
Adapter Class
ComponentAdapter
Container Adapter
FocusAdapter
Key Adapter
MouseMotionAdapter
MouseAdapter
Window Adapter
Listener Interface
ComponentListener
ContainerListener
FocusListener
KeyListener
MouseListener
MouseMotionListener
Window Listener
Comments
Post a Comment