不変クラスの多くの利点の 1 つは、それらの内部を他の関連するクラスで何らかの方法で実際に共有できることです。
コアJavaライブラリからのこの手法の例として何を引用できますか? なぜこのテクニックが機能するのですか?
編集: これは、実際にオラクルのインタビューで私に尋ねられました。
不変クラスの多くの利点の 1 つは、それらの内部を他の関連するクラスで何らかの方法で実際に共有できることです。
コアJavaライブラリからのこの手法の例として何を引用できますか? なぜこのテクニックが機能するのですか?
編集: これは、実際にオラクルのインタビューで私に尋ねられました。
不変クラスの多くの利点の 1 つは、それらの内部構造を他の関連クラスで実際に再利用できることです。
私はその議論/前提を買わない:
Java では、クラスの内部を再利用することはできません... コピー アンド ペースト プログラミングを正当な再利用戦略とみなさない限り。Java では、クラス全体を再利用するか、まったく再利用しません。
可変クラスは、不変クラスと同じように再利用できます。
エンティティを変更可能にする必要がある場合、元のクラスの不変性は実際には再利用の障害になります。
この前提は、121 票を獲得したこの回答で述べられているように、実際には効果的な Java で書かれています。
大したこと!よく知られている本から(文脈なしで)引用したからといって、あなたの前提が信頼できるものになるわけではありません. よく知られている本の多くは、議論の余地があること、またはまったく間違っていることさえ述べています。
121 人がこの 1 行を (他の多くの行の中で) 引用した回答に投票したからといって、信頼性が高まるわけではありません。彼らは、必ずしもその文ではなく、回答全体に投票していました。また、投票は客観的な正しさを示すものではありません。それらは主観的な同意を示します。
これがディベート/ディスカッション フォーラムである場合は、自分の適切な議論で私の議論に反論する必要があります。しかし、そうではなく、この質問は (IMO の正当な理由で) クローズされました。