생성자란 무엇일까?
생성자란 내가 클래스를 호출할때에 입력해야하는 필수값을 정할수있는 특별 유형의 메소드이다.
우선 이해를 돕기위해 연습문제를 풀어 보겠다.
Student 라는 클래스의 멤버변수(속성)
String name (이름)
int number (번호)
int grade (학년)
을 우선 만들어 보았다
이제 Student 클래스를 호출할때 반드시 name , number , grade 라는 인수를 넣어야지만 기능이
작동하게 생성자를 생성해보도록 하겠다.
위와 같이 생성자는 반환형이 없이
public (클래스명) (파라미터) {
기능
}
으로 이루어져 있다
String s에 입력된 인수의 값이 name으로
int n1에 입력된 인수의 값이 number로
값이 들어가게 되는것이다
이제 클래스를 호출해서 인수의 값을 넣어보겠다
s1 객체에는
이름은 홍길동
번호는 101
학년은 3이라는 인수를 집어넣어
s1이라는 객체가 완성이 되었다
s2에는 콜파머 , 19 , 3 이라는 다른 인수를 집어넣어
다른 객체가 완성이 되었다
하지만 생성자가 3개의 인수를 받는다고해서 3개만 쓸수있는것이 아니다
생성자를 여러개 생성해 다양한 값의 결과를 받을수도있다
이와 같이 생성자를 여러개 만드는 것을
생성자 오버로딩 이라고한다.