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

2. 생성자는 리턴 값이 없다.

 

생성자 정의 방법

클래스이름(){}

 

연산자 new가 인스턴스를 생성하는 것이다. 생성자가 인스턴스를 생성하는 것이 아니다.

 

Tv t = new Tv(); // Tv() 생성자

(인스턴스의 생성)

 

public class constructor {
    public static void main(String args[]){

        Data_1 d1 = new Data_1(); //연산자 new가 인스턴스를 생성하는 것이다. 생성자가 인스턴스를 생성하는 것이 아님.
        Data_2 d2 = new Data_2(); // 오류발생함 Data_2에 기본 생성자가 없어서




    }
}
// 따라서 앞으로 클래스 만들때에는 기본생성자를 생성하는 습관을 들이도록 하자.

//class 생성
class Data_1 {          //생성자를 아무것도 안 만들어주어서 컴파일러가 기본생성자 생성해줌
    int value;
}

class Data_2{
    int value;

    Data_2(){}          //기본 생성자 만들어주면 오류 해결임

    Data_2(int x){      //매개변수가 있는 생성임
        value = x;

    }

}

기본 생성자가 컴파일러에 의해서 추가되는 경우는 클래스에 정의된 생성자가 하나도 없을 때 뿐이다.

 

클래스 정의할때 기본생성자 생성하는 습관 들일것.

'JAVA > 객체지향, 클래스' 카테고리의 다른 글

생성자에서 다른 생성자 호출하기  (0) 2022.07.26
매개변수가 있는 생성자  (0) 2022.07.26
오버로딩(overloading)  (0) 2022.07.26
메서드간의 호출과 참조  (0) 2022.07.26
매개변수  (0) 2022.07.25

+ Recent posts