我正在使用静态方法和属性,当我调用静态方法时,我得到一个NullReferenceException
.
样本类:
internal class Utils
{
private static Regex[] _allRegexes = { _regexCategory };
private static Regex _regexCategory = new Regex(@"(?<name>c(ategory){0,1}):(?<value>([^""\s]+)|("".+""))\s*", RegexOptions.IgnoreCase);
public static string ExtractKeyWords(string queryString)
{
if (string.IsNullOrWhiteSpace(queryString))
return null;
_allRegexes[0];//here: _allRegexes[0]==null throw an exception
}
}
原因:
_allRegexes[0]==null
我无法弄清楚为什么会发生这种情况,我认为_allRegexes
应该在调用该方法时进行初始化。
谁能解释一下?