Java: When should a Java developer choose Interface vs Abstract Class deliberately?

Difficulty:

Medium

Questions:

1

Time Limit:

2 minutes

Passing Score:

100%

Question

When should a Java developer choose Interface vs Abstract Class deliberately?

  1. Choose Interface vs Abstract Class mainly when you want to postpone validation and fix problems manually later.
  2. Choose Interface vs Abstract Class whenever you want the code to look more advanced, even if the design gets less clear.
  3. Choose Interface vs Abstract Class only to avoid modeling domain rules explicitly in Java code.
  4. Use interfaces for service boundaries, policies, and pluggable behavior across unrelated types.

Hint

Think about the production scenario where the choice genuinely improves the code.

Answer and rationale

Correct answer: D. Use interfaces for service boundaries, policies, and pluggable behavior across unrelated types.

Use interfaces for service boundaries, policies, and pluggable behavior across unrelated types. Interviewers often ask this to see whether you can connect the concept to real design decisions.

Track: Java