충분히 쌓여가는
6.7 생성자 선언과 호출 - 다른 생성자 호출 this() 본문
생성자 오버로딩이 많아질 경우 생성자 간의 중복된 코드가 발생할 수 있다
매개변수의 수만 달리하고 필드 초기화 내용이 비슷한 생성자에서 이러한 중복 코드를 많이 볼 수 있다
Car(String model) {
this.model = model;
this.color = "은색";
this.maxSpeed = 250;
}
Car(String model, String color) {
this.model = model;
this.color = color;
this.maxSpeed = 250;
}
Car(String model, String color, int maxSpeed) {
this.model = model;
this.color = color;
this.maxSpeed = maxSpeed;
}
위의 중복 코드를 해결하기 위해
공통 코드를 한 생성자에만 집중적으로 작성하고, 나머지 생성자는 this(...)를 사용하여 공통 코드를 가지고 있는 생성자를 호출하는 방법으로 개선할 수 있다
Car(String model) {
this(model, "은색", 250);
}
Car(String model, String color) {
this(model, color, 250);
}
Car(String model, String color, int maxSpeed) {
this.model = model;
this.color = color;
this.maxSpeed = maxSpeed;
}
'이것이 자바다 > 06 클래스' 카테고리의 다른 글
6.9 인스턴스 멤버 - this (0) | 2024.04.01 |
---|---|
6.7 생성자 선언과 호출 - 가변길이 매개변수 (0) | 2024.04.01 |
6.7 생성자 선언과 호출 - 생성자 오버로딩 (0) | 2024.04.01 |
6.7 생성자 선언과 호출 - 생성자 (0) | 2024.04.01 |
6.7 생성자 선언과 호출 - new 연산자 (0) | 2024.04.01 |