딩딩크롱 2022. 8. 11. 00:04
728x90

생성자(Constructor)란?

new 키워드를 사용하여 객체를 생성함과 동시에 자동으로 호출되며 인스턴스 변수를 원하는 값으로 초기화할 수 있는 메소드이다.

생성자의 이름은 해당 클래스의 이름과 같아야 한다.

 

인스턴스 변수의 초기화

클래스를 가지고 객체를 생성하면, 해당 객체는 메모리에 즉시 생성된다.

하지만 이렇게 생성된 객체는 모든 인스턴스 변수가 아직 초기화되지 않은 상태이다.

자바에서 클래스 변수와 인스턴스 변수는 별도로 초기화하지 않으면, 다음 값으로 자동 초기화된다.

변수의 타입 초깃값
char '\u0000'
byte, short, int 0
long 0L
float 0.0F
double 0.0 또는 0.0D
boolean false
배열, 인스턴스 등 null

 

생성자(Constructor)의 특징

  1. 생성자는 반환값이 없지만, 반환 타입을 void형으로 선언하지 않는다.
  2. 생성자는 초기화를 위한 데이터를 인수로 전달받을 수 있다.
  3. 오버로딩이 가능하다.

 

class Car {
	String modelName;
    
	public Car() {	// 기본 생성자
    }
    
    public Car(String modelName) {
    	this.modelName = modelName;
    }
}
728x90