If you use an inner class
Your main class will not have to implement the event handler.
This is disairable if the super class of the main class has already implemented the event handler and written some code to handle the eventfrom some other sources. Or the sub classes of your main class might implement the event handler.
Basicaly it removes the risk of getting the event handling code overriden.