Why immutable class must be final?
If class A is not final but immutable, and then we can set class B extends A, and change the behaviour of class B. By doing this, we successfully mutated class A. Since class B ISA class A. class A is not immutable any more.In other words: class B is a mutation from class A, therefore if class A is not final, and then class A is mutable. Just like we are all mutation from ancient African. At least some scientist said so. There are some different opinions on this issue. See the following link for details. Have some fun too. Flaming discusion on final vs. immutableMake sure you read the above.