• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

Board에서 Player 선언에 대한 질문입니다

20.07.21 01:26 작성 조회수 121

0

Program의 static Main 내부에 선언된 Player player = new Player();가 새로운 플레이어로 생성된 것은 이해했습니다.

하지만 Board에서 Player _player = new Player();라고 선언하지 않고 짧게 Player _player;라고 선언하셨는데, 

Player _player = new Player();와 Player _player;를 둘 다 써봤는데 프로그램이 문제없이 작동합니다

new를 쓰고 안쓰고의 차이점이 궁금합니다

답변 2

·

답변을 작성해보세요.

3

Player _player = new Player();
를 하면 사실상 생성자에서 _player = new Player(); 를 해줬다고 생각하시면 되고,
Player _player; 를 하면 사실상 생성자에서 _player = null; 을 해줬다고 생각하시면 되겠습니다.

그러니 Player _player;만 하면 실제로 플레이어가 생성되지 않은 상태이고,
다른 어딘가에서 _player = new Player()를 이용해 직접 만들어줘야 한다는 의미가 됩니다.
추가로 어차피 다른 곳에서 _player = new Player()를 해줄거라면
처음에 선언할 때 Player _player = new Player();는 엄밀히 말해 불필요합니다
(어차피 다른애로 교체될 예정이기 때문)

0

도곡님의 프로필

도곡

질문자

2020.07.22

답변 감사합니다!