I prefer this way as it associates application code directly with the appropriate method of the appropriate object.
class MyButton extends Button { public boolean action(Event evt, Object what) { // handle button ... return true; } }
Multiple buttons can be handled by
action()