Unterschied zwischen KeyBindings und KeyListeners

Was ist der Sinn von KeyBindings, wenn Sie einfach tun könnten:

// Imports

public void Test {
    JButton button1;
    JButton button2;
    JButton button3;
    ...

    Test() {
        button1 = new JButton();
        button1.addKeyListener(this);

        button2 = new JButton();
        button2.addKeyListener(this);

        button3 = new JButton();
        button3.addKeyListener(this);

        ...
    }

    public void keyPressed(KeyEvent e) {
    }

    public void keyReleased(KeyEvent e) {
    }

    public void keyTyped(KeyEvent e) {

        Object src = e.getSource();

        if (src == button1) {
            ...
        }

        else if (src == button2) {
            ...
        }

        else if (src == button3) {
            ...
        }
        ...
    }
}

Sagen wir, ich habezehn Tasten. Wenn Sie dann KeyBindings verwenden, müssten Sie für jede Schaltfläche eine eigene Tastenkombination erstellen. Ist das Beispiel, das ich gezeigt habe, nicht effizienter? Warum nicht?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage