An anonymous inner class is an inner class without a name.
// Demonstrate the key event handlers. import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionAdapter; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.SwingUtilities; class SimpleKey extends JTextArea { public SimpleKey() { addMouseListener(new MouseAdapter() { // Handle mouse clicked. public void mouseClicked(MouseEvent me) { System.out.println("Mouse clicked"); }// w ww . j a va 2 s .c om }); addMouseMotionListener(new MouseMotionAdapter() { public void mouseDragged(MouseEvent me) { System.out.println("Mouse dragged"); } }); } } public class Main { public static void main(String args[]) { // Create the frame on the event dispatching thread. SwingUtilities.invokeLater(new Runnable() { public void run() { // Create a new JFrame container. JFrame jfrm = new JFrame("java2s.com"); // Give the frame an initial size. jfrm.setSize(220, 200); // Terminate the program when the user closes the application. jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Add the label to the content pane. jfrm.add(new JScrollPane(new SimpleKey())); // Display the frame. jfrm.setVisible(true); } }); } }