不可变对象在构造完成后就无法被修改——每个字段只设置一次,并且没有任何会改变状态的方法。要“修改”它,你需要创建一个新对象。
构建一个不可变类型
java
{
cents;
String currency;
{
.cents = cents;
.currency = currency;
}
Money {
(.cents + other.cents, currency);
}
{ cents; }
}
