追加です。
何故疑問を感じているかというと
無名クラスの方法だと解放せずに毎回 new でリスナー登録されていっているので
この部分のコードが呼び出されるたびに2重、3重、4重…と重複して登録されていってるんじゃないかと感じているからです。

普通は、確保→解放、で1セットだと思っていますのでなんか不信なんです