0

我知道 .NET String 类使用这种行为,但我找不到任何实现,而且我不知道如何命名这种行为。任何想法都会有所帮助。

4

1 回答 1

3

字符串类被称为Immutable

一个极其简化的示例可能如下所示:

public sealed class MyValue
{
  public MyValue(int value)
  {
    this.Value = value;
  } 

  public int Value { get; private set }

  public MyValue Add(int value)
  {
    return new MyValue(this.Value + value);
  }
}

此上下文中的对象无法更改。如果您需要另一个 MyValue 对象并将当前值添加到另一个值,您将获得一个新对象。

于 2012-04-04T08:59:04.077 回答