KeyListener (Java Platform SE 8 )
Keywords: java.awt.event.KeyListener interface
Date: 2026-01-21

java.awt.event

## Interface KeyListener

- All Superinterfaces:
    EventListener
  All Known Implementing Classes:
    AWTEventMulticaster, BasicComboBoxUI.KeyHandler, BasicComboPopup.InvocationKeyHandler, BasicTableUI.KeyHandler, BasicTreeUI.KeyHandler, KeyAdapter

      public interface KeyListener
      extends EventListener

  The listener interface for receiving keyboard events (keystrokes). The class that is interested in processing a keyboard event either implements this interface (and all the methods it contains) or extends the abstract `KeyAdapter` class (overriding only the methods of interest).

  The listener object created from that class is then registered with a component using the component's `addKeyListener` method. A keyboard event is generated when a key is pressed, released, or typed. The relevant method in the listener object is then invoked, and the `KeyEvent` is passed to it.

  Since:
    1.1
  See Also:
    `KeyAdapter`, `KeyEvent`, Tutorial: Writing a Key Listener

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `keyPressed(KeyEvent e)` Invoked when a key has been pressed.
    `void` | `keyReleased(KeyEvent e)` Invoked when a key has been released.
    `void` | `keyTyped(KeyEvent e)` Invoked when a key has been typed.

- - ### Method Detail

    - #### keyTyped

          void keyTyped(KeyEvent e)

      Invoked when a key has been typed. See the class description for `KeyEvent` for a definition of a key typed event.

    - #### keyPressed

          void keyPressed(KeyEvent e)

      Invoked when a key has been pressed. See the class description for `KeyEvent` for a definition of a key pressed event.

    - #### keyReleased

          void keyReleased(KeyEvent e)

      Invoked when a key has been released. See the class description for `KeyEvent` for a definition of a key released event.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.