생성자란 무엇인가?
- IT 정보/개발관련
- 2017. 7. 13.
생성자(Constructor)
역할
객체를 생성할 때 항상 실행되는 것으로, 객체를 초기화해주기 위해 맨 처음 실행되는 메소드이다.
특징
- 반환값이 없는 메소드는 생성자가 유일하다.
생성자는 인스턴스를 생성해주는 역할을 하는 특수한 메소드라고 할 수 있다. 반환값이 없기 때문에
return도 사용하지 않고, 반환 값 타입을 메소드 정의 포함시키지도 않는다. - 클래스에는 반드시 생성자가 존재해야 한다.
- 인스턴스 생성시 딱 한번 호출 된다.
- 인스턴스 변수의 초기화가 목적이다.
- 클래 이름과 동일한 이름을 가진 메소드이다.
- 반환형이 존재하지 않는다. 즉 return이 없다.
사용방법
- 클래스명 참조변수=new 클래스명(초기화 변수)
- 예제1234567891011121314151617181920212223public class Constructor{public static void main(String[] args) {Person p1 = new Person(28, "주니");System.out.println(p1.personInfo());}}class Person {int age;String name;public Person(int age, String name) {this.age = age;this.name = name;}public String personInfo() {return "이름 : " + name + ", 나이 : "+ age;}}//결과 - 이름 : 주니, 나이 : 28
cs - class에 생성자를 정의해주지 않아도 객체를 선언할 수 있다. => 정의해주지 않으면 detault로 생성자가 정의된다.
- 예제123456789101112131415161718192021public class Constuctor {public static void main(String[] args) {Person p = new Person();System.out.println(p.personInfo());}}class Person1 {private int age;private String name;public String personInfo() {return "이름: " + name + ", 나이: " + age;}}//결과 - 이름: null, 나이: 0
cs