Я получаю ошибку выполнения в своем Java-коде, и я пытаюсь понять причину этого. Эти два статических модификатора доступа между двойными звездочками - это элементы, о которых идет речь. Код компилируется с этими модификаторами или без них (звездочки удалены, конечно). Но во время выполнения он работает только без ошибок при наличии модификаторов. Почему это? Ошибка, созданная во время выполнения, когда статические модификаторы отсутствуют, приклеивается под кодом. Большое вам спасибо за вашу помощь!Модификатор доступа Java и NullPointerException
Вот код:
public class Blue {
public int[][] multiArray(int x, int y){
int[][] myArray = new int[x][y];
return myArray;
}
static Blue blueObject = new Blue();
public **static** int[][] one = blueObject.multiArray(3,3);
public **static** int[][] two = blueObject.multiArray(3,3);
public static void main(String[] args){
System.out.println("Hello world!");
}
}
Ошибка генерируется во время выполнения без статические модификаторы доступа:
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.NullPointerException
at Blue.<init>(Blue.java:13)
at Blue.<clinit>(Blue.java:11)
Работает для меня. проверьте здесь http://ideone.com/eyOn0x – ankurtr