Skip to content
Sharp

Object-oriented programming · interview question

Given a class with a price field, how can you ensure the price is never negative?

Multiple choiceHardchapter-3-curatedpremiumoopinvariants-and-validation
java
class Product {
  private final double price;
  public Product(double price) {
    if (price < 0) throw new IllegalArgumentException("Price must be non-negative");
    this.price = price;
  }
}
Choose one answer
Answer and explanation

Correct answer

A. Make the price a final field with initial validation.

Why

By making the price field final and validating it upon construction, you ensure that the price can never be set to a negative value, adhering to object invariants.

Test yourself on Object-oriented programming

A free test with instant, explained results. No account needed.

Start free test
All Object-oriented programming questions →