N-мерных массивов нет - есть только массивы массивов. Массивы - это объекты.

Всё передаётся по значению, в том числе и объекты. Точнее не сами объекты, а указатели на них. При работе с этими указателями как в Обероне происходит незримое разыменование, вот только зримое отсутствует. Нельзя сделать так a^ = b^, всегда присваиваются указатели.

Если не секрет, зачем Вам Java?