검수요청.png검수요청.png

생성자

위키원
이동: 둘러보기, 검색

생성자(construct)란 객체 지향 프로그래밍에서 객체를 초기화하기 위해 사용하는 제어자이다.

특징

  • 반환값 : 생성자는 인스턴스를 생성해주는 역할을 하는 특수한 메소드이며 다른 메소드와는 다르게 반환 값이 없다.
  • 이름 : 생성자의 이름은 클래스의 이름과 동일하게 사용하기로 약속되어 있다.[1]
  • 호출 : 분명하게 호출되는 메소드와 다르게 암묵적으로 호출된다.
  • 기능 : 메소드는 객체의 동작을 보여주기 위해 사용하지만 생성자는 객체의 상태를 초기화 하는 데 사용한다. [2]

종류

  • 초기 생성자 : 아무 파라미터가 없는 초기 생성자를 의미한다.

예를들어 아래의 코드는 클래스 안에 초기 생성자를 정의한 것이고 만약 클래스에 생성자가 없다면, 컴파일러가 자동적으로 초기 생성자를 만든다.

Class <Class 이름>()
{
  <Class 이름>()
  {
      //변수가 아닌 내용
  }
}
  • 매개 변수 생성자 : 매개 변수(필드)라는 파라미터를 가지는 생성자를 의미한다.

예를 들어 아래의 코드는 클래스 안에 매개변수 생성자를 정의한 것이고 만약 객체를 생성할 때 매개 변수가 파라미터로 초기화 되지 않는다면 객체는 생성되지 않는다.다양한 자료형이 매개변수로 활용 가능하다.

Class <Class 이름>
{
  int <매개변수1>
  String <매개변수2>
  <Class 이름>(int i, String s)
  {
    <매개변수1> = i
    <매개변수2> = s
  }
}

규칙

  • 생성자의 이름은 클래스 이름과 같아야 한다.
  • 반드시 퍼블릭(public)으로 선언되어야 한다.
  • 반환형은 선언하지 않는다.

각주

  1. 생성자 특징, <초기화와 생성자>, <<개인 블로그>>, 2013-12-11
  2. Java Constructor, <자바 생성자>, 2015-11-12 <<개인 블로그>>, 2015-11-12

참고자료

같이 보기


  검수요청.png검수요청.png 이 생성자 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.