Я обновлял унаследованную базу кода на Java и обнаружил следующую строку:
Object arg[] = { new Integer(20), new Integer(22) };
Эта строка привлекла мое внимание, потому что я привык к такому виду кода:
Object[] arg = { new Integer(20), new Integer(22) };
Содержимое массива здесь не важно. Мне любопытно, что квадратные скобки рядом с именем переменной сравниваются с квадратными скобками рядом с именем класса. Я пробовал в Eclipse (с Java 5), и обе строки действительны для компилятора.
Есть ли разница между этими декларациями?