The HashMap instance has an entrySet field of type HashMap$EntrySet . Since the entrySet class is an internal HashMap class, it has an implicit reference to the contained instance ( this$0 ).
This is normal and is required for the entrySet instance to access the containing HashMap instance.
source share