C# 11 정적 추상 멤버 | Patrick Smacchia

C# 11에 추가될 인터페이스 정적 추상 멤버의 사용법에 대해 Patrick Smacchia님이 상세히 설명을 주십니다.

키포인트

  • double + double, int + int는 이제 T + T로 표현 가능
  • abstract이지만 가상으로 만들 수 없음
    ※ C# 8에 추가된 static 기본 구현과의 충돌을 막기 위해 static abstract로 명명됨
  • 정적 추상 멤버는 Generic Math를 위한 확장
  • 이외에 정적 메서드를 인터페이스로 노출하기 위한 일반화 가능
    Static Abstract Members In C# 10 Interfaces | Khalid Abuhakmeh
public static class ApplicationHandlerExtensions
{
    public static void MapHandler<THandler>(this WebApplication app)
        where THandler : IHandler
    {
        app.MapMethods(
            THandler.Template, 
            new[] {THandler.Method.ToString() }, 
            THandler.Handle );
    }
}

좋아요 2

덕분에 operator 제약 선언이 가능해졌네요.

좋아요 2