java - sintaxis - La depuración HashMap muestra un conjunto de entradas recursivas? ¿Qué es?
recursividad linguistica (2)
Estoy usando un HashMap<String,Serializable>
y mientras estoy depurando veo lo siguiente de forma recursiva. Qué significa eso? ¿Por que es esto entonces?
La instancia de HashMap
tiene un entrySet
campo con el tipo HashMap$EntrySet
. Como la clase EntrySet
es una clase interna de HashMap
, tiene una referencia implícita a la instancia que contiene ( this$0
).
Esto es normal y se requiere para que la instancia de EntrySet
instancia que contiene HashMap
.
HashMap$EntrySet
es una clase interna, tiene una referencia explícita llamada this$0
a HashMap
. Y el HashMap
tiene un campo private transient Set<Map.Entry<K,V>> entrySet
que se refiere a él. Por lo tanto, solo referencias cíclicas habituales.