Diciamo che ho due classi, denominate A e B, che sono associate tra loro in modo tale che è più conveniente se l'oggetto di ogni classe contiene un riferimento all'altro. In altre parole, la classe A ha una variabile "b" di classe B. La classe B ha una variabile "a" di classe A. In questo modo, il codice in ogni classe ha un facile accesso all'altra classe.Java: è possibile avere riferimenti di classe finale reciproci?
C'è un modo per impostare questa associazione come "definitiva"? cioè la variabile b in classe A è finale e variabile a in classe B è finale? Sembra che l'impostazione di questi riferimenti in un costruttore (come sarebbe richiesto dalla parola chiave finale) richiede un tipo di riferimento circolare illogico.
Questa è più una questione concettuale che pratica. Grazie!
Combinare le due classi non aiuta. I riferimenti circolari possono e spesso si verificano con oggetti della stessa classe. Considera i nodi in un albero in cui ogni nodo ha un riferimento finale ai suoi genitori e ai suoi figli, o tenta di creare un elenco doppiamente immutabile con riferimenti finali ai nodi successivo e precedente. –