2016-03-29 17 views
-3
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のすべてのインスタンスを同じデータを使用したいと思った。静的サブクラスの静的メソッドを呼び出す際のNullPointerException

+0

は、Javaに新しいしている場合、私はあなたがcricket_007 @それら –

+0

を必要とする理由あなたが知っている限り、私はプログラミングに新しいものではないので、私は理由を知り、内部クラス(または静的クラスと変数)をお勧めしません私はそれらを必要とします、それは私がJavaで何もしたことがないことです。 – burtek

答えて

1

サイズを指定して配列を初期化する必要があります。それ以外の場合はnullです。

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

もちろん、それは明らかです。ありがとう、私はできるだけ早くそれを受け入れます。 – burtek

関連する問題