Question
Which practice avoids a common mistake with static, final, and Initialization?
- Ignore the static, final, and Initialization issue and rely on team discipline instead of APIs or contracts.
- Silence the static, final, and Initialization problem by using raw types, broad catches, or shared mutable state.
- Do not put request-specific or mutable shared business state into static fields.
- Prefer the version of static, final, and Initialization that makes behavior less predictable as long as the code compiles.
Hint
Look for the option that protects correctness instead of hiding the problem.
Answer and rationale
Correct answer: C. Do not put request-specific or mutable shared business state into static fields.
Do not put request-specific or mutable shared business state into static fields. This is a common failure mode in real Java code and a frequent interview follow-up.
Track: Java