생성자

12·2025년 3월 11일

자바

목록 보기
4/8

인스턴스를 생성할때 사용된다.
클래스 이름과 같다.
return type이 없다.

Car c1 = new Car();

매개변수가 0개인 생성자를 기본 생성자라고 한다.

이름을 가지고 인스턴스가 만들어지고 싶게 한다?

private String name; //클래스 앞에 name이라는 변수가 존재해야한다.
.
.
.
public Car(String name){
	this.name = name;
}

생성자가 하나라도 만들어지면 기본 생성자는 만들어지지 않는다.

불변객체 - getter만 가짐.

생성자도 오버로딩이 가능하다.

this는 인스턴스 자기 자신을 참조할때 사용하는 키워드이다.
this(), 생성자는 자기자신의 생성자를 말한다.
this() 생성자는 생성자 안에서만 사용 가능하다.
this() 생성자는 생성자 안에서 super()생성자를 호출하는 코드 다음이나, 첫번째 줄에 위치해야한다.

부모의 생성자를 호출 할 때는 super()를 사용한다.
super는 인스턴스 부모를 참조할 때 사용하는 키워드이다.

super() 생성자는 부모 생성자를 의미한다.

super() 생성자는 생성자 안에서만 사용 가능하다.

super() 생성자는 생성자 안에서만 사용가능하다.

super() 생성자는 생성자 안에서 첫번째 줄에만 올 수 있다.

생성자는 무조건 super() 생성자를 호출해야 한다. 사용자가 super() 생성자를 호출하는 코드를
작성하지 않앗다면 자동으로 부모의 기본생성자가 호출된다.

부모클래스가 기본생성자를 가지고 있지 않다면, 사용자는 반드시 직접 super()생성자를 호출해야 한다.

1개의 댓글