Object-oriented programming · interview question
In Java, why should you avoid returning a reference to a mutable internal collection?
Multiple choiceEasychapter-3-curatedpremiumoopdefensive-copying
Answer and explanation
Correct answer
A. To prevent external modifications that break class invariants
Why
Returning a reference to a mutable internal collection can lead to external modifications that break class invariants, compromising encapsulation. This could result in an inconsistent state of the object.
Test yourself on Object-oriented programming
A free test with instant, explained results. No account needed.
More Object-oriented programming questions
- Why does declaring a method as 'final' in a superclass change runtime behavior?
- Why might a developer choose to use a 'restock' method rather than a public setter for inventory?
- How do unmodifiable views differ from defensive copies in protecting internal collections?
- In an e-commerce application, what is the advantage of using a 'processOrder' method in a Product class?
- Which statement is true about interfaces in Java?
- Why are public mutable fields risky in a store model?