그것은 어떤 의미에서 더 나은가요?
위에서 짧은 정리 코드를 사용하면이 값이 좋습니다. 다음 예는 다음과 같습니다
초기화되지 않은
Object
들
null
로 시작하기 때문에이 작동
class Dog {
private String name;
private Type type;
public static enum Type {
large, medium, small;
}
. 또한 빈 생성자를 지정할 필요가 없습니다.
당신은 선명도를 높이 평가하지만 여전히 가능한 한 짧은 코드를 유지하려면, 다음 기타 (경험이 적은)의 devs 명확하게 값이 무엇인지 볼 수 있기 때문에
class Dog {
private String name = null;
private Type type = null;
public Dog() {}
public static enum Type {
large, medium, small;
}
}
더 나은, 그리고 생성자는 명확 경우 한정된. 미래에 로직을 추가 할 값/논리
유연성에서
:
또한 자신의 장점이 생성자에서 상수 값을 초기화 각 상황에 대한 장단점을 평가하고, 당신이 좋아하는 것을보십시오. 유일한 예외는 기존 코드베이스로 작업 할 때입니다. 이 경우 대회/스타일 가이드를 준수하십시오.
그들은 적어도 쓸모가 없습니다. 기본값은 모두 null입니다. – Marvin
어쩌면 조금 더 명확할까요? – user697911
나는 그렇게 생각하지 않지만 분명히 어떤 사람들에게는 그렇다고 생각한다. 다른 한편으로 나는 한 시간 동안 (매우 특별한 경우 라 할지라도) _caused by_ 초기화를 'null'로 추적하는 데 몇 시간을 보냈다. – Marvin