▶오늘의 주제 : 생성자
생성자는 new 연산자로 호출되는 중괄호 {} 블록입니다. 객체 생성 시 초기화를 담당하며, 모든 클래스에 반드시 하나 이상 존재합니다.
클래스 내부에 선언을 생략하면 기본 생성자가 자동으로 추가됩니다.
▶기본 생성자
- 모든 클래스는 반드시 생성자가 존재하며, 생성자를 하나 이상 가질 수 있습니다.
- 클래스 내부에 생성자 선언을 생략했다면 중괄호 블록 내용이 비어 있는 기본 생성자를 바이트 코드에 자동 추가합니다.
<생성자를 생략한 Case>
public class Car { }
// 컴파일
public class Car {
public Car() { } //자동 추가 //Car() : 기본 생성자
}
<new 연산자 뒤에 기본 생성자를 호출해서 객체를 생성>
Car myCar = new Car(); // Car(); 기본 생성자
▶생성자 선언
<생성자 블록>
클래스 (매개변수선언, ...) {
// 객체의 초기화 코드
}
- 리턴 타입이 없습니다.
- 클래스 이름과 동일합니다.
- 매개 변수 : new 연산자로 생성자를 호출 할 때 외부의 값을 생성자 블록 내부로 전달하는 역할을 합니다.
Car myCar = new Car("그랜저", "검정", 300) //3개의 매개값을 제공
public class Car {
//생성자
Car(String model, String color, int maxSpeed) { ...}
}
package six_two;
public class Car_2 {
Car_2(String color, int cc) {
}
}
package six_two;
public class CarExample_2 {
public static void main(String[] args) {
Car_2 myCar = new Car_2("검정", 3000);
//Car_2 myCar = new Car_2 (); (x) 기본 생성자를 호출할 수 없음
}
}
//생성자를 호출해서 객체 생성
'Java' 카테고리의 다른 글
Java - 추상클래스 (0) | 2022.12.07 |
---|---|
Java - 전역변수와 지역변수 (0) | 2022.11.24 |
Java - 필드 (0) | 2022.11.23 |
Java - 객체 지향 프로그래밍 (0) | 2022.11.23 |
Java - 문제풀이 (0) | 2022.11.18 |