С первым вы сохраняете ссылку на player 1
. Это дает вам возможность вызывать любые методы, хранящиеся в player 1
, перед тем, как ссылаться на него в вашем массиве. Вторая опция просто означает, что объект находится только в вашем массиве, и поэтому вам придется вызывать метод напрямую, например player[0].run()
.
Что касается лучшей практики, то это просто зависит от того, что вы намерены делать с объектом. Если вам нужно изменить его до создания ссылки в массиве, используйте первый фрагмент. Если вам просто нужно создать экземпляр большого количества объектов игрока, я бы просто использовал для l oop, который создает массив игроков напрямую.