클래스의 변수를 초기화할때 생성자와 그냥 선언할때 중 언제 하는게 좋을까요?


최근에 C#과 자바로 개발을 하는데요. 궁금한게 생겼습니다. 변수를 초기화할때 가장 좋은 방법이 뭘까요?

public class Dice
{
    private int topFace = 1;
    private Random myRand = new Random();

    public void Roll()
    {
       // ......
    }
}

이렇게 정의하면서 동시에 초기화하는것과

public class Dice
{
    private int topFace;
    private Random myRand;

    public Dice()
    {
        topFace = 1;
        myRand = new Random();
    }

    public void Roll()
    {
        // .....
    }
}

생성자를 만들어 초기화 하는것 중 어떤게 더 좋은 방식일까요? 둘 중 더 좋은 방식으로 코딩하려고합니다.


조회수 285


1 답변


좋아요
0
싫어요
채택취소하기

제 규칙은 :

  1. 선언할 때 기본 값(null, false, 0, 0.0...)은 초기화하지 않는 것입니다.
  2. 생성자에 매개변수에 변하는 값이 오지 않을때는 정의하는 부분에서 초기화해주는것을 선호합니다.
  3. 값이 여러개가 들어올 수 있다면 생성자의 매개변수에 전달해서 초기화해줍니다.
  4. 일관되게 코딩합니다. (이게 제일 중요합니다.)
  • 2016년 01월 20일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close