Я думаю, что понимаю основы анонимных классов, но хотел бы кое-что прояснить.когда у меня есть синтаксис, такой как этот
class A
{
class AnonymousClass1 Implements ActionListener{}
}
class A
{
public A()
{
JButton btn = new JButton();
btn.addActionListener( new ActionListener(){} );
}
}
Если анонимный класс на самом деле является внутренним классом класса А, как в первом примере: теоретически, семантика верна?
Что именно происходит?Я думаю, что когда java-файл компилируется, создается файл .class для анонимного класса, поэтому на него можно ссылаться (но я не смог его найти).Когда создается объект A, он создает объект кнопки, затем btn вызывает метод addActionListener (), который фактически передает что-то вроде этого btn.addActionListener(new AnonymousClassOne())
AnonymousClassOne - универсальное имя, данное компилятором.
Если нет, что происходит?Спасибо.