Я слышал, что байт-код Java на самом деле не поддерживает какие-либо безымянные классы.Как javac переводит неименованные классы в именованные?
Синтезирует имя вида EnclosingClass$n, где "n" - счетчик для анонимных классов в EnclosingClass. Поскольку использование $ в идентификаторах не рекомендуется, эти имена не должны вступать в конфликт с любыми указанными пользователем именами.
EnclosingClass$n
EnclosingClass
$