객체가 new 연산자를 통해 Heap 메모리 영역에 할당될 때 객체 안에서 만들어지는 필드 초기화 + 생성 시 필요한 기능 수행
생성자는 일종의 메소드로 전달된 초기값을 받아서 객체의 필드에 기록
생성자 규칙
[접근제한자] [예약어] class 클래스명 {
[접근제한자] 클래스명() { }
[접근제한자] 클래스명(매개변수) { (this.)필드명 = 매개변수; }
}
public class Academy {
private int studentNo;
private String name;
public Academy() {}
public Academy(int studentNo, String name) {
this.studentNo = studentNo;
this.name = name;
}
}
기본 생성자
매개변수 생성자
오버로딩
오버로딩 조건
this
public class Academy{
private String name;
public Academy() { }
public Academy(String name) { this.name = name; }
}
this( )
public class Academy{
private int age;
private String name;
public Academy() { this(20, “김철수”); }
public Academy(int age, String name) {
this.age = age; this.name = name;
}
}