확장 메소드

CJB_ny·2022년 7월 25일
0

C#

목록 보기
14/24
post-thumbnail

기존 클래스의 기능을 확장하는 기법.

기반클래스를 물여받아 파생 클래스를 만들어 여기에 필드와 메소드를 추가하는 것과는 다르다.

using MyEx;

namespace MyEx
{ 
    public static class Extension
    {
        public static int Double(this int originType, int value)
        {
            int result = value;

            result *= value;

            return result; 
        }
    }
}

메소드를 선언하되, static 한정자로 수식해야하며,

메소드의 첫 번째 매개변수는 반드시 this 키워드와 함께 확장하고자 하는 클래스(형식)의 인스턴스 이어야한다.

그 뒤에 따라오는 value는 확장 메소드를 호출할 대 입력되는 매개변수이다.

또한 선언하는 클래스도 역시 static 한정자로 수식해야한다.

< 사용 >

int resultValue = 3;
resultValue = resultValue.Double(5);
Console.WriteLine(resultValue); // 25
profile
https://cjbworld.tistory.com/ <- 이사중

0개의 댓글