Почему в следующей реализации Синглтона важно "только чтение"?

public sealed class Singleton
{
    static readonly Singleton instance=new Singleton();

    // Explicit static constructor to tell C# compiler
    // not to mark type as beforefieldinit
    static Singleton()
    {
    }

    Singleton()
    {
    }

    public static Singleton Instance
    {
        get
        {
            return instance;
        }
    }
}

Я думаю, что даже при удалении ключевого слова readonly из экземпляра экземпляра члена, singleton по-прежнему будет работать одинаково хорошо.

  • Его статический, может существовать только один экземпляр.
  • Значение не может быть изменено, поскольку у него нет установщика.
  • Это запечатанный класс, не может быть подклассифицирован.

Пожалуйста, помогите мне исправить мое понимание концепций здесь.

6
задан Danish Khan 28 January 2011 в 08:12
поделиться