1. 생성자란?
- 'new' 키워드를 사용하여 객체가 생성될 때 자동으로 실행되는 특수한 형태의 메서드.
- 리턴형을 명시하지 않으며, 메서드의 이름은 클래스와 동일.
class User {
User() {
}
}
User u = new User();
- 객체 생성과 동시에 특정 작업을 수행할 때 사용. (예: 멤버 변수 초기화)
2. 기본 생성자
- 파라미터가 없는 생성자.
- 클래스에 특별히 생성자가 정의되지 않은 경우, 컴파일러는 기본 생성자가 존재한다고 인식.
class User {
User() {
}
}
3. 파라미터를 갖는 생성자
- 메서드처럼 파라미터를 가질 수 있음.
- 파라미터를 멤버 변수에 할당하여 객체 초기화.
class User {
String name;
int age;
User(String name, int age) {
this.name = name;
this.age = age;
}
}
User u = new User("자바학생", 20);
- 객체 생성 시 해당 파라미터를 전달하여 유연한 초기화 가능.