Why use private fields in Java classes?
How does immutability maintain invariants?
Why can not enforcing invariants become a real problem?
How does method validation reinforce encapsulation?
Why are constructor validations important?
What are the trade-offs of using immutable objects?
Why is input validation crucial in setters?
What are the consequences of not using encapsulation?
How do you ensure an object's state is always valid?
How would you explain an invariant in an interview?