본문 바로가기
C#/C# Common

Extension Methods

by doublerabbits 2022. 9. 3.

Extension Methods

 

기능

  • 기존 클래스의 인스턴스 메서드처럼 사용
  • 기존 클래스의 내용을 변경하지 않고 기능 확장

 

구성

  • static class 안에 static method 형태로 구성 된다.
  • 메서드의 첫번째 파라메터는 확장하려는 클래스로 고정된다.
  • 첫번째 파라메터 클래스명 앞에 this 를 붙여준다

 

 

using System;

namespace ExtensionMethods
{
    class Program
    {
        static void Main(string[] args)
        {
            var p = new Person { Name = "John", Age = 33 };
            var p2 = new Person { Name = "Sally", Age = 35 };
            p.SayHello(p2);
            Console.ReadKey();
        }
    }

    public class Person
    {
        public string Name { get; set; }
        public int Age { get; set; }
    }

    public static class Extensions
    {
        public static void SayHello(this Person person, Person person2)
        {
            Console.WriteLine($"{person.Name} says hello to {person2.Name}");
        }
    }
}

 

 

 

 

 

https://www.youtube.com/watch?v=D3OCSkXLFuk 

 

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

Generics  (0) 2022.09.04
?. ??=  (0) 2022.09.04
LINQ  (0) 2022.09.01
Event  (0) 2022.08.30
Anonymous Methods and Lambda Expression  (0) 2022.08.30