调用静态子类的静态方法时出现 NullPointerException

NullPointerException while calling static method of static subclass

class A {
    public static class B {
        private static String[] names;
        public static void addName(int i, String name) {
            names[i] = name;
        }
    }
}

调用 A.B.addName(0,"test"); 导致 NullPointerException。我是 Java 的新手,谁能解释为什么?我想在应用程序的开头填充名称数组,并使 A 的所有实例使用相同的数据。

你需要用一些大小来初始化数组,否则它是空的。

private static String[] Names = new String[5];