✅ 생성자는 인스턴스를 생성하는 것이 아니다!!
인스턴스를 생성하는 것은new
연산자이다.
생성자는 인스턴스의 변수들을 초기화하는 메서드이다.
공통점
1. 오버로딩이 가능하다.(여러 개의 생성자가 존재)
차이점
1. 생성자의 이름은 클래스의 이름과 같다.
2. 생성자는 리턴 타입이 없다.
기본 생성자
를 만들어준다.자신이 속한 클래스에서 다른 생성자를 호출하는 경우에 사용
this()
메서드는 반드시 생성자 내부
에서만 사용 가능하다.this()
메서드는 반드시 생성자의 첫 줄
에 위치해야 한다.클래스의 멤버 변수와 매개변수의 이름이 동일한 경우, 이를 구분해주기 위해서 this 키워드를 사용한다.
즉this 키워드
는 인스턴스 자신을 가리킴!
class Car {
private String modelName;
private String color;
private int maxSpeed;
public Car(String modelName, String color, int maxSpeed) {
this.modelName = modelName;
this.color = color;
this.maxSpeed = maxSpeed;
}
}