개발/JAVA

생성자(constructor)

기디개 2022. 7. 5.
반응형
Student student1 = new Student();

생성자는 class 이름과 동일해야한다.

기본생성자, 자바 컴파일러가 자동으로 생성해준다.

프리컴파일 단계에서 넣는다구~!

 

public student(){}

기본 생성자는 매개변수나 구현코드도 하나도 없다.

 


 

생성자의 용도: 처음 객체를 생성하면서 객체에 이름을 부여하고 싶다고 할때, 생성자를 이용하여 부여할 수 있다. 그 때 명령되야 하는 코드를 입력한다.

 

이름과 아이디를 전달받아 사용하고 싶다고 한다면,

아래와 같이 코드를 짤 수 있다.

 

이것이 매개변수가 있는 생성자

 

컴파일러가 디폴트생성자를 주는 경우는 생성자가 하나도 없는 경우.

임의로 생성자를 하나로 만들게 된다면, 디폴트 생성자를 서포트 해주지 않는다.

따라서 매개변수를 받아 사용해야 할때,

1. 직접 써주기의 방법을 선택할 수 있다.

2. 디폴트 생성자 직접 코딩하기

 

동일한 이름을 가진 함수가 존재할 수 있고, 생성자도 존재할 수 있다.

당연히 매게변수는 달라야 한다.

 

이런경우를 생성자 오버로딩이라고 한다.

메서드가 오버로딩이 일어나는 것처럼.

 

생성자의 특징 정리하자면,

- 생성자는 클래스 이름과 동일하고,

- 반환타입이 없다

- new 키워드에 의해 호출이 된다.

- 생성자가 없을때 기본생성자가 컴파일러로 하여금 자동으로 생성되며

- 생성자를 임의로 만들게 되면 컴파일러가 기본생성자를 서포트 하지 않는다.

- 메소드가 아니다.

- 상속되지 않는다.

반응형

댓글

💲 추천 글