本文介绍了不变对象是在实例化后其外部可见状态无法更改的对象。Java类库中的String、Integer和BigDecimal类就是不变对象的示例-它们表示在对象的生命期内无法更改的单个值。并说明了在Java理论与实践中,不变性的一些长处、何时使用不变类和构造不变类的一些准则。使用不变对象比使用可变对象要容易得多。它们只能处于一种状态,所以始终是一致的,它们本来就是线程安全的,可以被自由地共享。