我有一个公共静态类,它有许多静态方法和静态只读字段。
public static class Global
{
...
// Config is a static method in Global.
public static readonly string FirebaseAuthDomain = Config("FirebaseAuthDomain");
private static readonly string ResourceNameFormat = "{0}.{1}";
...
}
我访问NullReferenceException
时收到ResourceNameFormat
。但是,如果我在ResourceNameFormat
之前移动FirebaseAuthDomain
的声明,如下所示,它可以正常工作。
public static class Global
{
...
private static readonly string ResourceNameFormat = "{0}.{1}";
// Config is a static method in Global.
public static readonly string FirebaseAuthDomain = Config("FirebaseAuthDomain");
...
}
看起来Config()
的调用与此行为有关,但我不知道为什么。这两个代码片段有什么区别?