Под «анонимным классом», я полагаю, вы имеете в виду анонимный внутренний класс .
Анонимный внутренний класс может пригодиться при создании экземпляра объекта с определенным " extras ", например методы перегрузки, без фактического подкласса класса.
Я использую его как ярлык для присоединения слушателя событий:
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// do something
}
});
Используя этот метод, кодирование немного быстрее, так как мне не нужно создавать дополнительный класс, который реализует ActionListener
- я могу просто создать анонимный внутренний класс, не создавая отдельный класс.
Я использую это техника для «быстрых и грязных» задач, когда создание целого класса кажется ненужным. Наличие нескольких анонимных внутренних классов, которые выполняют точно то же самое, должны быть реорганизованы в фактический класс, будь то внутренний класс или отдельный класс.
Из книги Компоновщики и загрузчики :
В системах 386 базовый адрес текста - 0x08048000, что позволяет размещать достаточно большой стек под текстом, оставаясь при этом выше адреса 0x08000000, что позволяет большинству программ выполнять используйте единую таблицу страниц второго уровня. (Напомним, что на модели 386 каждая таблица второго уровня отображает адреса 0x00400000.)