Singleton by Jon Skeet chiarimento

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(); } } 

Desidero implementare il pattern Singleton di Jon Skeet nella mia attuale applicazione in C #.

Ho due dubbi sul codice

  1. Com’è ansible accedere alla class esterna all’interno della class annidata? intendo

     internal static readonly Singleton instance = new Singleton(); 

    Qualcosa si chiama chiusura?

  2. Non riesco a capire questo commento

     // Explicit static constructor to tell C# compiler // not to mark type as beforefieldinit 

    cosa ci suggerisce questo commento?