advancedCore Java Fundamentals256 of 436

Why should an immutable class generally be final?

Tests whether you know a non-final immutable class can be subclassed, and that subclass can override methods to introduce mutable state or behavior that breaks the immutability contract callers rely on -- sealing the class with final is what actually guarantees every instance behaves immutably.

Ready to master this question?

Generate a complete walkthrough — background, the full answer in plain language, a working code example explained line by line, a real-world scenario, common mistakes, and how this same question gets asked in different ways.

Sign in to generate a response

Next Step

← Back to all Core Java questions