User Input Listener Strategy

Hello im new here and i dont really know if this question is newbie related…but im recently implemented a new listener strategy in my engine.

Its really simple, a class ListenerManager(implements every input listener) has a arraylist for each type of input(mouse moved, key pressed…), a static MouseEvent and a static KeyEvent.
A function init() adds the ListenerManager as listener in the contentPane, oh im using Java2d with a JFrame as window
Every input call the KeyEvent or MouseEvent is updated and the ActionListeners are called in order.

Code example:


ListenerManager.addListenerToLlist(ListenerManeger.KEY_PRESSED, new ActionListener() {
    public void performAction(ActionEvent e) {
         if (ListenerManager.keyInput.getKeyCode() == KeyEvent.VK_SPACE) {
                System.out.println("Space was pressed");
         }
    }
});


I want to know if there is other ways of implementing this and if this strategy has any flaws;