public class Main{
private GameManager manager;
private JFrame window;
...
public void createWindow(){
...
window.addKeyListener(manager.new Listener());
}
}
Classe 2:
public class GameManager{
...
class Listener implements KeyListener{
...
}
}
Acho que são a solução complicada para um problema simples, que poderia ter sido resolvido com “delegates”. (Essa é a opinião do sr. Anders Hejslberg, que designou esse recurso de “delegates” no J++, mas não é a opinião do sr. James Gosling, que obviamente defende “inner classes” até a morte.)
Fox_McCloud
Veja o que a Kathy Sierra diz no livro de certificação Java 5 no início do capítulo a respeito de inner classes: