오버로딩

정키·2023년 5월 25일

의문투성이들

목록 보기
10/12

오버로딩(Overloading)은 객체 지향 프로그래밍에서 동일한 이름을 가진 메서드나 생성자를 다른 매개변수 목록으로 여러 번 정의하는 것을 말합니다. 즉, 동일한 이름을 가진 다양한 시그니처의 메서드를 정의하여 다양한 입력에 대해 다른 동작을 수행할 수 있습니다. 오버로딩을 사용하면 같은 기능을 하는 메서드를 다른 매개변수로 호출할 수 있으며, 코드의 가독성과 재사용성을 높일 수 있습니다.

오버로딩은 다음 두 가지 조건을 만족해야 합니다:

메서드의 이름이 동일해야 합니다.
매개변수의 개수 또는 타입이 달라야 합니다.

public class Calculator {
    public int add(int a, int b) {
        return a + b;
    }

    public double add(double a, double b) {
        return a + b;
    }

    public int add(int a, int b, int c) {
        return a + b + c;
    }
}

이제 다양한 매개변수를 사용하여 오버로딩된 add 메서드를 호출할 수 있습니다:

Calculator calculator = new Calculator();
int result1 = calculator.add(2, 3);             // int add(int a, int b) 메서드 호출
double result2 = calculator.add(2.5, 3.7);      // double add(double a, double b) 메서드 호출
int result3 = calculator.add(2, 3, 4);          // int add(int a, int b, int c) 메서드 호출
profile
bbbu

0개의 댓글