Java: Which practice avoids a common mistake with Type Erasure?

Difficulty:

Medium

Questions:

1

Time Limit:

2 minutes

Passing Score:

100%

Question

Which practice avoids a common mistake with Type Erasure?

  1. Ignore the Type Erasure issue and rely on team discipline instead of APIs or contracts.
  2. Do not expect List<String> and List<Integer> to be different runtime classes just because the source types look different.
  3. Silence the Type Erasure problem by using raw types, broad catches, or shared mutable state.
  4. Prefer the version of Type Erasure 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: B. Do not expect List<String> and List<Integer> to be different runtime classes just because the source types look different.

Do not expect List<String> and List<Integer> to be different runtime classes just because the source types look different. This is a common failure mode in real Java code and a frequent interview follow-up.

Track: Java