public sealed class Singleton
{
Singleton() {}
public static Singleton Instance
{
get
{
return Nested.instance;
}
}
class Nested
{
// Explicit static constructor to tell C# compiler
// not to mark type as beforefieldinit
static Nested() {}
internal static readonly Singleton instance = new Singleton();
}
}
Я хочу реализовать шаблон Jon Skeet Singleton в моем текущем приложении на С#.
У меня есть два сомнения в коде
-
Как можно получить доступ к внешнему классу внутри вложенного класса? Я имею в виду
internal static readonly Singleton instance = new Singleton();
Что-то называется закрытием?
-
Я не могу понять этот комментарий
// Explicit static constructor to tell C# compiler // not to mark type as beforefieldinit
что предлагает этот комментарий?