[생성자]
객체를 생성하는 역할을 하는 클래스의 구성 요소.
인스턴스가 생성될 때 호출되는 인스턴스 초기화 메서드라고 정리할 수 있다.
new 키워드를 사용해 객체를 생성할 때 호출되는 것이 생성자이다.
[규칙]
1. 생성자의 이름은 반드시 클래스 이름과 일치해야 한다.
2. 생성자는 리턴 타입이 없다.
[생성자 종류]
1. [기본 생성자 = 매개변수가 없는 생성자]
A. 생성자를 따로 만들지 않으면, 자바 컴파일러가 기본 생성자를 자동으로 추가한다.
B. new 키워드를 사용하여 생성자를 호출하여 인스턴스를 생성할 때, 인스턴스에 원하는 필드 값을 설정
2. [매개변수가 있는 생성자]
A. 클래스의 인스턴스 생성과 동시에 필드 값을 설정하여 편리하게 인스턴스 생성이 가능.
B. 매개 변수가 없는 생성자와는 다르게, 인스턴스 생성 시, 그 개수와 타입에 알맞게 기입해야 한다.
[생성자 Ex]
public class ConstructorExample {
public static void main(String[] args) {
Car c = new Car("Model X", "빨간색", 250);
System.out.println("제 차는 " + c.getModelName() + "이고, 컬러는 " + c.getColor() + "입니다.");
}
}
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;
}
public String getModelName() {
return modelName;
}
public String getColor() {
return color;
}
}
1. Car 클래스에 3가지 private 필드를 선언.
2. Car 클래스에 생성한 필드들을 포함한 매개변수가 있는 생성자 작성
3. 다른 클래스에서 Car 클래스 객체 생성 시 Car 클래스에 생성된 필드를 전달하여 생성.
'백엔드 기술 > Java' 카테고리의 다른 글
자료 구조에서 Array VS List (0) | 2023.04.18 |
---|---|
List, Set, Map 의 차이점 (0) | 2023.04.18 |
이너 클래스의 장점 (0) | 2023.04.17 |
접근 제어자 (0) | 2023.04.17 |
Static 키워드 (0) | 2023.04.15 |