Статический вложенный класс является самой простой формой: он работает так же, как класс верхнего уровня, единственное отличие - это область, в которой он объявлен. Там ничего не скрыто.
Нестатический вложенный класс имеет скрытую ссылку на экземпляр включающего класса, поэтому вы можете ссылаться на нестатические поля включающего класса изнутри внутреннего класса.
Когда вы определяете анонимный класс в методе, у вас также будет копия всех локальных переменных, объявленных в методе и на которые есть ссылки из анонимного класса. Если метод нестатический, у вас также будет скрытая ссылка на включающий класс.