Categories: Java 언어Korean

Java 총 정리[57. 생성자 오버로딩]

생성자 오버로딩

이전 걸음에서는 메소드 오버로딩에 대해서 설명을 드렸습니다. 복습을 하면 같은 메소드명에 매개변수의 자료형이 다르거나 자료형의 개수의 차이를 두고 사용 호출 시에 편하게 똑같은 메소드 이름으로 호출을 하여 사용을 할 때 편안한 점이 있었습니다. 그럼 동작과 관련 있는 하나가 더 있는데 이번 글에서 같이 확인을 해보겠습니다.

메소드와 더불어서 기능을 할 수 있는 것은 바로 생성자 입니다. 그래서 이번 걸음에서는 생성자 오버로딩에 대해서 한번 공부를 할 예정입니다. 이번 글을 끝까지 읽으신다면 생성자 오버로딩에 대해서 확실하게 이해를 할 수 있습니다.

생성자 오버로딩을 설명과 예제를 통해서 한번 확인을 해보도록 하겠습니다. 설명을 이해하고 사용방법을 소스 코드로 익힌다면 이번 글로 추구하는 것을 이루어졌다고 생각을 합니다. 그럼 생성자 오버로딩에 대해서 공부를 해보겠습니다.

생성자 오버로딩 이란?

생성자 오버로딩이란 생성자를 선언을 하게 되면 객체를 생성을 하려고 할 때 무조건 정의 된 생성자로 객체를 생성을 해야 합니다. 그렇게 되면 그 생성자가 아니게 객체를 만들어야 하는 상황이 생기면 문제가 발생을 하게 됩니다. 그래서 객체를 만드는 생성자를 여러 형태로 만들 수 있게 하여 필요로 하는 생성자로 객체가 생성을 하도록 한 것이 생성자 오버로딩 입니다.

생성자 오버로딩 예제 소스

    
class A{
    int a;
    A(int num){
        a = num;
    }
    A(){

    }
}

public class OverloadingTest2_4 {
    public static void main(String[] args) {
        A a = new A(5);
        A a1 = new A();

        System.out.println("a : " + a.a);
        System.out.println("a1 : " + a1.a);
    }
}        
    

위에 소스를 보면 A 객체를 2개를 생성하게 된다. 여기서 a 변수는 정수 변수 하나를 매개변수로 받는 생성자가 호출 되어서 객체가 생성이 되고 a1변수는 매개변수가 없이 객체 생성자가 호출 되어서 객체가 만들어 집니다. 

생성자 형태가 맞는 것을 자동으로 호출되어서 객체가 생성 됩니다.

생성자 오버로딩 설명

위의 그림처럼 생성자 오버로딩은 개수의 제한 없이 만들고 사용을 하면 됩니다. 그렇다고 무분별하게 사용을 하면 소스가 가독성이 떨어 질 수 있으니 참고해주세요.

Dolphin

Recent Posts

Java 총정리[97. Java GUI]

Java GUI Java GUI에 대해서 이번 걸음에서 배움으로써 GUI에 전반적인 지식과 Java GUI를 구현하는 방법…

7개월 ago

Java 총정리[96. Java TCP 통신 프로그램 구현]

Java TCP 통신 프로그램 구현 Java TCP 통신 프로그램 구현을 위해서 이전 걸음에서 쓰레드에 대한…

7개월 ago

Java 총정리[95.쓰레드 통신]

쓰레드 통신 이전 걸음에서 쓰레드의 임계영역에 대해서 같이 공부를 했습니다. 동기화에 대한 개념을 계속적으로 하고…

7개월 ago

Java 총 정리[94. 쓰레드 임계영역]

쓰레드 임계영역 이전 걸음에서 쓰레드의 동기화에 대해서 같이 공부를 했습니다. 동기화에 대한 전반적인 내용을 공부하고…

8개월 ago

Java 총 정리[93. 쓰레드 동기화]

쓰레드 동기화 이전 걸음에서 계속 쓰레드에 대해서 공부를 하고 있습니다. 쓰레드는 상당히 중요한 개념이기 때문에…

8개월 ago

Java 총 정리[92. 쓰레드 join()]

쓰레드 join() 이전 걸음에서 쓰레드의 전반적인 실행 흐름에 대해서 공부를 했습니다. 이제 배운 실행 흐름…

8개월 ago

This website uses cookies.