C#

46.C# - Method Overload (메서드오버로드)

Godffs 2009. 8. 12. 19:10
반응형
동일한 이름으로 다른 기능을 갖고 있는 것을 메서드 오버로드라 한다.
동일한 메서드의 이름을 사용하고자 할 때 메서드의 이름이 동일해도 매개변수의
인자수 또는
타입형이 다르면 상관없다.
Overload : 다중정의(어러번 정의) <-> Override ; 재정의 (다시 정의)

using System;

public class 메서드오버로드
{
    public static void Main(string[] args)
    {
        Sum(100); // 1~100까지 합
        Sum(10, 20); //10~20까지 합
        Sum(1, 100, 2);  //1~100까지 2의 배수(짝수의 합)
    }

    private static void Sum(int p, int p_2, int p_3)
    {
        int sum = 0;
        for (int i = p; i <= p_2; i++ )
        {
            if (i % p_3 == 0)
            {
                sum += i;
            }
        }
        Console.WriteLine(sum);
    }

    private static void Sum(int p, int p_2)
    {
        int sum = 0;
        for (int i = p; i <= p_2; i++)
        {
            sum += i + p_2;
        }
        Console.WriteLine("10~20 : {0}",sum);
    }

    private static void Sum(int p) //1~100;
    {
        int sum = 0;
        for (int i = 0; i < p; i++)
        {
            sum += 100;
        }
        Console.WriteLine("1~100: {0}",sum);
    }
}


반응형