IT수업/JAVA PART1

IT 수업 11주차 (19) 객체지향_ 생성자 함수

워제하 2024. 3. 6. 12:29

● 생성자 함수

 

 생성자 메서드?

- 객체를 생성하는 것, 만들어진 객체 내에서는 사용할 수 없지만 객체 생성하는 시점에서는 계속 쓸 수 있음
- 객체 생성시에 한번 호출되는 특수한 형태의 메서드
- 객체 생성시에 1회 호출
- 생성된 객체 내에서는 사용이 불가
- 객체 생성시에 필요한 메모리 공간형성과 초기값 부여에 사용
- 생성자 함수는 클래스명과 동일하며 반환자료형을 가지지 않는다.
- 생성자 함수를 클래스 내에 명시하지 않으면 컴파일러에 의해 주입되는 생성자가 있는데 이를 디폴트 생성자라고 한다
- 디폴트 생성자는 모든 멤버변수의 초기값을 0(or false null) 으로 지정

- 생성자 함수는 함수니까 오버로딩이 가능하다.

 

 

 

● 객체를 생성할 때 해당 필드를 외부에서 받은 값으로 초기화하기 위한 생성자 선언 방법

 

객체 ( 타입 필드1, 타입 필드2) {

       this.필드1 = 필드1;

       this.필드2 = 필드2;

}

로 하면된다.

 

예시) member 객체에 name 필드와 id 필드를 초기화하면 

member(String name, String id) {

       this.name = name;

       this.id = id;

}

 

 

 

 

 

 

마우스 오른쪽 눌러서 source의 generate Constructor using Fields 누르면 나온다,

generate 하면 이렇게 코드가 자동으로 입력된다.

 

<실행화면>

 

 

 

클래스 선언시 생성자함수를 1개 이상 명시하게 되면 디폴트 생성자가 자동 주입되지 않으니 주의해야 한다.