たぶんMainFrameやMainPanelのインスタンスをSubPanelで参照する方法が分からなくて、
b.addActionListener(frame.mp);}}ってやってもコンパイルできなくて、
b.addActionListener(MainFrame.mp);みたいにできるようにクラス変数にしちゃったんだと推測。
プログラムの設計と実装の仕方を良い参考書や良いソースを見ながら勉強した方がいいと思う。