>>355
さすがにそれは間違いだ。
それに、>>354 はおかしかった。見落としてた。反省。

仮に ClassAD という手作りクラスがあって、さらに内部クラスに TGForEachNode というのがあった場合、
そしてさらに TGForEachNode を継承して名前を付けない(それを匿名という)クラスを作り、
さらには同時にインスタンスも作りたいとき、
>>345 のような書き方ができる。正しくは new ClassAD.TGForEachNode() { ... } と書く。
ClassAD のインスタンス ad があった場合は new ad.TGForEachNode() でも ad.new TGForEachNode() でもいいが、
どっちも汚い書き方。

ActionListener は API の標準クラスで、何かの内部クラスではないから、
普通に new ActionListener() { ... } して匿名の継承クラスを作るか、
implements した名前付きクラスを作るのが正しい。