티스토리 뷰
1. 확장 메서드(Extension Method)
- 기존 클래스의 기능을 확장하는 기법
- 상속과는 다른 개념
- 방법
- 메소드를 선언하되, static 한정자
- 첫 번째 매개 변수는 반드시 "this [클래스(형식)] 이름"
- 그 뒤에 매개 변수들은 확장 메소드를 호출할 때 입력되는 매개 변수들
- 확장 메소드를 선언하고 있는 클래스도 static
namespace ExtensionMethod
{
public static class IntegerExtension
{
public static int Square(this int myint)
{
return myint * myint;
}
public static int Power(this int myint, int exponent)
{
int result = myint;
for(int i = 0; i < exponent; i++)
{
result = result * myint;
}
return result;
}
}
class Program
{
static void Main(string[] args)
{
int a = 5;
Console.WriteLine(a.Power(3));
Console.WriteLine(3.Power(3));
Console.WriteLine(a.Square());
Console.WriteLine(3.Square());
}
}
}