2016-09-25 2 views
1

Im стартер в Java. Недавно у меня была проблема с пониманием копию (DbObject [] дб) метод в этой программе, исходный код выглядит следующим образом:Объект Java против массива объектов

//Listing of a program to manage random access files.

Interface&PersonalclassDbclass

кажется, что это копирует оригинал записи в первый элемент db с типом **DbObject[]**, но почему бы не просто скопировать значение в db с типом **DbObject**?

+0

Значение каждого 'объекта' является ссылкой. И массивы также являются «Объектами». –

+1

Это очень плохо сформулированный вопрос, и предоставленный исходный код не помогает нам ответить на ваш вопрос. Откуда у вас код? Напишите образец, который показывает, как он используется, и где возникает путаница. Тогда мы можем вам помочь. – mttdbrd

+0

Похоже, что копия принимает массив объектов 'DbObject'. Что делает 'copy (DbObject [] db)' do? Если бы мне пришлось вызывать по имени и параметру, я бы предположил, что для этого требуется массив из 'DbObject', и для каждого он его копирует. –

ответ

0

Я собираюсь сделать вывод, что ваш спрашивать, потому что я считаю, я знаю, что вы пытаетесь получить в, хотя и не зная, что делает copy(...)exatcly Я могу только сделать этот вывод.

Предполагая, что copy(DbObject[] db) делает, как следует из названия (что, вероятно, скопировать DbObject с от заданного параметра (т.е. массив db) в другое место, то это имеет смысл для того, чтобы быть массивом.

Почему? Ну предполагая, что copy() делает, как я описал, вам нужно было бы перебирать массив и для каждого из DbObject s в массиве, вы должны были бы сделать что-то, что бы это ни было. Было бы бессмысленно проходить мимо один DbObject, потому что вам нужно было бы позвонить copy() несколько раз за каждый объект, который вы хотели бы скопировать, а не давать copy() массив из DbObject объектов и их всех в одном месте.

Смежные вопросы