Java Swing: использование ActionMap

Я видел сообщение ранее, которое рекомендует одобрять действия над слушателями. Я не очень хорошо знаком с ActionMap. Каковы недостатки каждого подхода? Мне нравится создавать внутренние классы, которые реализуют слушателей. Это плохая практика?

Спасибо

Ответ 1

привязки клавиш полагаются на действия. Существует потенциальный риск того, что Action "реализации, как правило, более дорогие с точки зрения хранения, чем типичные ActionListener". На практике проблема не возникает. Вот пример .

Использование KeyListener концептуально легче понять, но, как правило, более сложно поддерживать. Один неизбежно заканчивается воссозданием каких-то привязывающих механизмов. Этот пример, хотя поучительный и даже подходящий для игры, бесполезно сложный.