Question
What deeper point about Immutable Class Design should a senior Java developer mention?
- At senior level, the right answer is that Immutable Class Design exists mostly for historical syntax reasons.
- True immutability combines final fields, early validation, and protection of nested mutable state rather than only hiding setters.
- At senior level, the JVM removes the tradeoffs around Immutable Class Design, so design choices barely matter.
- At senior level, any approach to Immutable Class Design is equally correct if it compiles and passes a small test.
Hint
Look beyond syntax and explain the runtime, API, or design consequence.
Answer and rationale
Correct answer: B. True immutability combines final fields, early validation, and protection of nested mutable state rather than only hiding setters.
True immutability combines final fields, early validation, and protection of nested mutable state rather than only hiding setters. This is the kind of tradeoff-aware answer senior interviews usually expect.
Track: Java