메서드 오버로딩

 

자바와 같이 C#도 메서드 오버로딩을 지원합니다.

 

int add(int a, int b)

{

    return a + b;

}

 

int add(int a, int b, int c)

{

    return a + b + c;

}

 

void main(string[] args)

{

    Console.WriteLine("두개" + add(10, 20));

    Console.WriteLine("세개" + add(1, 2, 3));

}

 

메서드의 이름은 같더라도 인자가 다른경우, 이것이 바로 오버로딩

당연히

두개 30

세개 6

 

이렇게 결과가 나오게 됩니다.


 

인자의 수가 같고 형이 다른경우라면 이것 역시 가능합니다.

 

int add(int a, int b)

{

    return a + b;

}

 

int add(long a, long b)

{

    return a + b + c;

}

 

void main(string[] args)

{

    Console.WriteLine("정수" + add(10, 20));

    Console.WriteLine("롱" + add(1234567899, 9876543211));

}

 

이것도 가능합니다.

 

 

하지만, 메서드의 인자 수와 타입이 같고 리턴형만 다른 경우(내용물이 같은 경우)

에러발생합니다.

 

'Programming Language > C#' 카테고리의 다른 글

Partial Class  (0) 2014.05.13
파일스트림 (텍스트)  (0) 2014.05.13
Get, Set - 클래스 간 값 공유  (0) 2014.05.13
실수형 나누기  (0) 2014.05.13
반올림  (0) 2014.05.13
Posted by 긍정왕오킹