사진 출처 : https://namu.wiki/w/Git
> 객체 생성과 동시에 인스턴스 변수를 원하는 값으로 초기화 할 수 있는 기능
◼ 생성자는 리턴 값이 없다.
◼ 개발자가 매개변수 없는 생성자를 호출하면 해당 클래스에서 매개변수가 없는 생성자를 호출한다.
◼ 개발자가 생성자를 하나 만들었다면 기본 생성자는 필요가 없다.
public class JavaExam {
public static void main(String[] args) {
Car c1 = new Car("소방차");
Car c2 = new Car();
System.out.println(c1.name);
}
}
public class Car {
// 파일 필드명
String name;
int number;
public Car(String s){
name = s;
}
public Car(){
this.number = 119;
System.out.println(number);
}
}
생성자는 객체가 될 때 필드를 초기화 하는 역할을 한다.
위의 코드를 보면 메인에서 각각 c1, c2 생성자를 호출해 객체를 생성했다.
c1은 매개변수 있는 생성자를 호출해 car class에서 public Car(String s) 가 호출되어 name을 s("소방차")로 초기화 해준다..
반면, c2는 기본 생성자를 호출해 public Car()를 호출해 클래스 안의 number를 119로 만든 후 출력문을 해준다.