What is the point of KeyBindings if you could just do:
// Imports
public void Test {
JButton button1;
JButton button2;
JButton button3;
...
If your are purely counting CPU-cycles, yes it is (arguably) more efficient (and after careful consideration, I am not even sure of that). But there are some strong points against it:
So for very localized problems, your approach can be sufficient, while for a bigger view, it cannot hold.
You can find in the third paragraph here, some similar and additional comments on this matter.
Finally, it is a bit weird to put a KeyListener on a JButton. Usually, we register an ActionListener.