생성자란 무엇인가?

생성자(Constructor)


역할

객체를 생성할 때 항상 실행되는 것으로, 객체를 초기화해주기 위해 맨 처음 실행되는 메소드이다.

특징

  • 반환값이 없는 메소드는 생성자가 유일하다.
    생성자는 인스턴스를 생성해주는 역할을 하는 특수한 메소드라고 할 수 있다. 반환값이 없기 때문에
    return도 사용하지 않고, 반환 값 타입을 메소드 정의 포함시키지도 않는다.

  • 클래스에는 반드시 생성자가 존재해야 한다.
  • 인스턴스 생성시 딱 한번 호출 된다.
  • 인스턴스 변수의 초기화가 목적이다.
  • 클래 이름과 동일한 이름을 가진 메소드이다.
  • 반환형이 존재하지 않는다. 즉 return이 없다.

사용방법

  • 클래스명 참조변수=new 클래스명(초기화 변수)

  • 예제

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    public 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로 생성자가 정의된다.

  • 예제

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    public 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


당신에게 추천하는 콘텐츠



Designed by JB FACTORY