❓ 생성자

- 인스턴스가 생성될 때마다 호출되는 '인스턴스 초기화 메서드'

- 인스턴스 생성시 수행할 작업(iv 초기화)에 사용

Time t = new Time(); // 객체생성
t.hour = 12;
t.minute = 34;        => iv초기화
t.second = 56;

    ↓
Time t = new Time(12,34,56);     // 생성자 호출 , 생성자 추가해야 사용가능

- 이름이 클래스 이름과 같아야 한다.

- 리턴값이 없다.(void 안붙임)

- 모든 클래스는 반드시 생성자를 가져야 한다. (하나 이상)

class Card{
	Card() { // 매개변수 없는 생성자.
    	// 인스턴스 초기화 작업
}

	Card(String kind, int number) { // 매개변수 있는 생성자 
    	//인스턴스 초기화 작업
}        
    
    => 생성자 오버로딩

👀 기본 생성자

- 매개변수가 없는 생성자

- 생성자가 하나도 없을 때만, 컴파일러가 자동 추가

=> Data_1 클래스는 생성자가 없음->컴파일러가 기본생성자 자동 추가

=> Data_2  오류

      -> Data_2 클래스는 생성자가 있지만, 매개변수가 있기 때문에 매개변수가 없는

     기본 생성자를 따로 만들지 않는다

      -> Date_2() { } 생성자를 만들어줘야 오류가 안 남

 

👀 매개변수가 있는 생성자

 

 

 

+ Recent posts