[c#] C# 정적 메소드 오버로딩

C#에서는 메소드 오버로딩을 지원하여 동일한 이름의 메소드를 여러 개 정의할 수 있습니다. 메소드 오버로딩을 사용하면 동일한 작업을 수행하는 여러 메소드가 각각 다른 매개변수를 허용할 수 있습니다.

정적 메소드 오버로딩

정적 메소드(Static Method)는 특정 인스턴스에 묶이지 않고 클래스 자체에 속합니다. 따라서 같은 클래스 내에서 동일한 이름의 정적 메소드를 여러 개 정의하여 오버로딩할 수 있습니다.

다음은 정적 메소드를 오버로딩하는 간단한 예제입니다.

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

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

위의 예제에서는 Add라는 이름의 정적 메소드를 정수형 매개변수와 실수형 매개변수를 각각 받는 두 개의 오버로드된 메소드로 정의했습니다.

사용 예시

int result1 = Calculator.Add(3, 5);
double result2 = Calculator.Add(3.4, 5.6);

첫 번째 호출은 정수형 매개변수를 받는 Add 메소드가 호출되고, 두 번째 호출은 실수형 매개변수를 받는 Add 메소드가 호출됩니다.

이와 같이 C#에서는 메소드의 시그니처(매개변수 타입 및 개수)에 따라 메소드를 구분하므로, 동일한 이름의 메소드를 여러 개 정의하여 다양한 매개변수 유형을 다룰 수 있습니다.

정적 메소드 오버로딩을 사용하면 클라이언트 코드에서 여러 가지 형식을 간단히 다룰 수 있으며, 코드의 가독성을 높일 수 있습니다.

결론

정적 메소드 오버로딩은 C#에서 오버로딩을 통해 다양한 매개변수 유형을 다루는 용이한 방법을 제공합니다. 이를 통해 코드의 유연성을 높이고 가독성을 향상시킬 수 있습니다.

참고 자료