【问题标题】:NullPointerException while calling static method of static subclass调用静态子类的静态方法时出现 NullPointerException
【发布时间】:2016-03-29 23:42:03
【问题描述】:
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新手,谁能解释一下为什么?我想在应用程序的开头填充 names 数组,并使 A 的所有实例使用相同的数据。

【问题讨论】:

  • 如果您是 Java 新手,我不会推荐内部类(或静态类和变量),除非您知道为什么需要它们
  • @cricket_007 我对编程并不陌生,所以我知道我为什么需要它们,这只是我从未用 Java 做过的事情。

标签: java class nullpointerexception static-methods


【解决方案1】:

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

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

【讨论】:

  • 当然,这很明显。谢谢,我会尽快接受。
猜你喜欢
  • 1970-01-01
  • 2011-01-17
  • 2015-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多