Updated March 23, 2023
Introduction to Java Adapter Classes
Adapter Classes in Java are nothing new. They are used to provide the implementation of Listener interfaces. The advantage of the adapter class is that it saves code. If we inherit the adapter class using the Adapter interface, we will not be forced to implement all the listener interface methods. There are namely three packages in which the Java adapter classes are found. The three packages are:
- java.awt. event
- java.awt. dnd
- java.swing. event
Also, another advantage of the Adapter Class is that they are useful when we want to process a few of the events that are handled by a particular event listener interface.
Working of Adapter Classes in Java with Syntax
As we have noticed in the introduction, there are three packages where we find the adapter classes. We are now going to see the corresponding Listener interface of the respective adapter classes in all three packages.
- java.awt. event Adapter Classes
- java.awt.dnd Adapter Classes
- java.swing. event Adapter Classes
1. java.awt. event Adapter Classes
Below are some of the Adapter classes and their corresponding listener interface. These are present in the Abstract Window Toolkit of the Java package.
Adapter Class |
Listener Interface |
WindowAdapter | WindowListener |
KeyAdapter | KeyListener |
MouseAdapter | MouseListener |
MouseMotionAdapter | MouseMotionListener |
FocusAdapter | FocusListener |
ComponentAdapter | ComponentListener |
ContainerAdapter | ContainerListener |
HierarchyBoundsAdapter | HierarchyBoundsListener |
WindowAdapter Class
The below code gives the syntax of the Adapter Class, and it gives us an idea as to how the WindowAdapter Class looks and the syntax.
Syntax:
AdapterExample()
{
f=new Frame("Hello World");
f.addWindowListener(new WindowAdapter()
public void windowClosing(WindowEvent e)
{
f.close();
}
}
KeyAdapter Class
The below code gives the syntax of the KeyAdapter Class.
Syntax:
public abstract keyAdapter Class
extends Object
Implements KeyListener
MouseAdapter Class
The below code gives the syntax of the MouseAdapter Class.
Syntax:
MouseAdapterExample()
{
f=new Frame("Mouse Adapter");
f.addMouseListener(this);
f.setSize(100,100);
f.setLayout(null);
f.setVisible(false);
}
MouseMotionAdapter Class
The below code gives the syntax of the MouseMotionAdapter Class.
Syntax:
MouseMotionAdapterExample()
{
f=new Frame("Adapter for Mouse Motion");
f.addMouseMotionListener(this);
f.setSize(100,100);
f.setLayout(null);
f.setVisible(false);
}
public void mouseDragged(MouseEvent e)
{
Graphics g=f.getGraphics();
g.setColor(Color.ORANGE);
g.fillOval(e.getX(),e.getY(),20,20);
}
FocusAdapter Class
The below code gives the syntax of the FocusAdapter class.
Syntax:
public abstract class FocusAdapter
extends Object
Implements FocusListener
ComponentAdapter Class
The below code gives the syntax of the ComponentAdapter class.
Syntax:
class MyAdapter extends ComponentAdapter
{
public void componentMoved(ComponentEvent e)
{
int a = e.getComponent().getX();
int b = e.getComponent().getY();
System.out.println("Value of X " + a);
System.out.println("Value of Y: " + b);
}
}
ContainerAdapter Class
The below code gives the syntax of the ContainerAdapter Class.
Syntax:
public abstract class ContainerAdapter
extends Object
implements ContainerListener
HierarchyBoundsAdapter Class
The below code gives the syntax of the HierarchyBoundsAdapter class.
Syntax:
public abstract class HierarchyBoundsAdapter
extends Object
implements HierarchyBoundsListener
2. java.awt.dnd Adapter Classes
Below are some of the adapter classes which are used in the awt.dnd package. They are listed down in a table.
Adapter Class | Listener Interface |
DragSourceAdapter | DragSourceListener |
DragTargetAdapter | DragTargetListener |
In this case, there are two Adapter classes under the respective package, which is called. We will see the syntax of the two Adapter classes and study the codes under the respective package.
DragSourceAdapter Class
The below code gives the syntax of the DragSourceAdapter class.
Syntax:
public abstract class DragSourceAdapter
extends Object
implements DragSourceAdapterListener
DragTargetAdapter Class
The below code gives the syntax of the DragTargetAdapter class.
Syntax:
public abstract class DragTargetAdapter
extends Object
implements DragTargetAdapterListener
3. java.swing. event Adapter Classes
Below are some of the classes which are used in the swing. event package. They are listed down in a table.
Adapter Class | Listener Interface |
MouseInputAdapter | MouseInputListener |
InternalFrameAdapter | InternalFrameListener |
In this case, we notice two adapter classes along with their Listener Interface. The package javax. swing. event has two adapter classes which are respectively listed down in the table.
MouseInputAdapter Class
Below is the code which provides the syntax of the MouseInputAdapter class.
Syntax:
public abstract class MouseInputAdapter
extends MouseAdapter
implements MouseInputListener
InternalFrameAdapter Class
Below is the code which provides the syntax of the InternalFrameAdapter class.
Syntax:
public abstract class InternalFrameAdapter
extends Object
implements InternalFrameListener
Explanation
Adapter Classes are basically used in the case when the class is declared as abstract. Only the working is based on different functionalities, including the working of the Java classes, which are part of different Java packages. There are three packages in Java that have different Adapter classes and Listener Interfaces along with them. Adapter Classes are used in numerous cases where servers are used, and there is connectivity with the SQL database.
There are different functionalities, and mostly all of them are being used in Android programming as well. Adapter Classes are well-known functionality in Java programming, which helps coders get the idea of many applications that can be used via Swing methodology. There are many ideas that can be put forward to develop the Adapter Class methodology in Java. Loops can also be incorporated to develop some other types of functionality.
Conclusion
In this article, we see the working, and we see that there are three main packages that contain the adapter classes. We see the syntax of all the adapter classes which are present, as well as some of the codes of the working, are also provided. Adapter classes are basically unique in Java, and they are part of Swing functionality in Java.
Recommended Articles
This is a guide to Java Adapter Classes. Here we discuss the basic concept, adapter classes and their corresponding listener interface, along with the working of adapter classes with syntax. You may also look at the following articles to learn more –