제네릭 메서드와 기본 메서드를 C #으로 작성하는 방법

패트리 크 골 레비 오 스키

이 예제는 매우 간단하고 내가 달성하려는 것을 보여줍니다.

public class A : A<object>
{
    // public static A GetInstance() => new A();
    // I can't do this, because cannot override static methods
}

public class A<T>
{
    public static A<T> GetInstance() => new A<T>();

    // public static A GetInstance() => new A();
    // can't do this, because it says that the method is already defined
}

기본적으로 GetInstance두 가지 방법으로 방법을 사용할 수 있기를 원합니다 .

  • 유형 지정 T: A<T>.GetInstance()또는 A.GetInstance<T>()(어떤 유형 은 중요하지 않음)-유형을 반환해야합니다.A<T>
  • 이 유형을 지정하지 않고 : A.GetInstance()- 유형 을 반환해야합니다 A.

이것을 어떻게 할 수 있습니까?

금연 건강 증진 협회
using System;

public class Program
{
    public static void Main()
    {
        Console.WriteLine(A.GetInstance());
        Console.WriteLine(A<int>.GetInstance());
        Console.WriteLine(A.GetInstance<bool>());
        /*
            output :
            Program+A
            Program+A`1[System.Int32]
            Program+A`1[System.Boolean]
        */
    }

// 클래스

    public class A : A<object>
    {
        // non-generic method in non-generic class
        public static A GetInstance() 
        {
            return new A();
        }

        // generic method
        public static A<T> GetInstance<T>() 
        {
            return new A<T>();
        }
    }

    public class A<T>
    {
        // non-generic method in generic class
        public static A<T> GetInstance() 
        {
            return new A<T>();
        }
    }
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

이 C # 메서드를 제네릭으로 만드는 방법은 무엇입니까?

분류에서Dev

C # 올바른 방법으로 제네릭 메서드 구현

분류에서Dev

C #에서 제네릭 메서드 오버로드를 만드는 방법은 무엇입니까?

분류에서Dev

제네릭 / 무의미한 방식으로 제네릭 메서드를 구현하는 가장 좋은 방법

분류에서Dev

제네릭으로 팩토리 메서드를 선언하는 방법

분류에서Dev

Class <T>를 제네릭 메서드로 보내는 방법

분류에서Dev

실제로 C #에서 비동기 메서드를 작성 / 종료하는 방법은 무엇입니까?

분류에서Dev

C #에서 제네릭 메서드의 값을 얻는 방법

분류에서Dev

C ++에서 제네릭 기본 클래스를 초기화하는 방법

분류에서Dev

더 나은 방법으로 목표 C와 같이 신속하게 getter 메서드를 작성하는 방법

분류에서Dev

제네릭 메서드를 사용하여 List <T>를 Array t [] (기본 형식의 경우)로 변환하는 방법은 무엇입니까?

분류에서Dev

C # 메서드에서 제네릭 클래스 참조를 얻는 방법

분류에서Dev

자식에서 기본 메서드를 강제로 호출하는 방법

분류에서Dev

와일드 카드를 사용하여 제네릭 메서드의 동작을 모의하는 방법

분류에서Dev

C #에서 단일 연결 목록을 제네릭으로 만드는 방법

분류에서Dev

제네릭 메서드를 만드는 방법

분류에서Dev

TypeScript에서 기본 제네릭 유형을 자식 제네릭으로 만드는 방법은 무엇입니까?

분류에서Dev

제네릭 메서드를 제네릭이 아닌 메서드로 래핑하는 방법은 무엇입니까?

분류에서Dev

클래스 속성을 설정하는 제네릭 메서드로 재귀 방지 C #

분류에서Dev

기본 클래스에서 제네릭 메서드를 호출하는 FSharp

분류에서Dev

메서드의 반환 형식으로 C # 8에서 nullable 제네릭 형식을 허용하는 방법은 무엇입니까?

분류에서Dev

제네릭 메서드에서 제네릭 유형을 확인하는 방법

분류에서Dev

Java에서 다른 제네릭으로 생성자를 만드는 방법

분류에서Dev

Forms에서 재사용하기 위해 메서드를 제네릭으로 변환

분류에서Dev

기본 클래스의 메서드를 사용하여 중첩 클래스에서 제네릭 형식을 반환하는 방법

분류에서Dev

반복기에 대한 제네릭 메서드를 구현하는 적절한 방법

분류에서Dev

매개 변수 Array <Codable>로 제네릭 메서드를 선언하는 방법은 무엇입니까?

분류에서Dev

제네릭 형식을 반환하는 제네릭 메서드를 만드는 방법

분류에서Dev

SpringData 쿼리 메서드를 사용하여 A And (B 또는 C)와 같은 조건으로 쿼리를 작성하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    이 C # 메서드를 제네릭으로 만드는 방법은 무엇입니까?

  2. 2

    C # 올바른 방법으로 제네릭 메서드 구현

  3. 3

    C #에서 제네릭 메서드 오버로드를 만드는 방법은 무엇입니까?

  4. 4

    제네릭 / 무의미한 방식으로 제네릭 메서드를 구현하는 가장 좋은 방법

  5. 5

    제네릭으로 팩토리 메서드를 선언하는 방법

  6. 6

    Class <T>를 제네릭 메서드로 보내는 방법

  7. 7

    실제로 C #에서 비동기 메서드를 작성 / 종료하는 방법은 무엇입니까?

  8. 8

    C #에서 제네릭 메서드의 값을 얻는 방법

  9. 9

    C ++에서 제네릭 기본 클래스를 초기화하는 방법

  10. 10

    더 나은 방법으로 목표 C와 같이 신속하게 getter 메서드를 작성하는 방법

  11. 11

    제네릭 메서드를 사용하여 List <T>를 Array t [] (기본 형식의 경우)로 변환하는 방법은 무엇입니까?

  12. 12

    C # 메서드에서 제네릭 클래스 참조를 얻는 방법

  13. 13

    자식에서 기본 메서드를 강제로 호출하는 방법

  14. 14

    와일드 카드를 사용하여 제네릭 메서드의 동작을 모의하는 방법

  15. 15

    C #에서 단일 연결 목록을 제네릭으로 만드는 방법

  16. 16

    제네릭 메서드를 만드는 방법

  17. 17

    TypeScript에서 기본 제네릭 유형을 자식 제네릭으로 만드는 방법은 무엇입니까?

  18. 18

    제네릭 메서드를 제네릭이 아닌 메서드로 래핑하는 방법은 무엇입니까?

  19. 19

    클래스 속성을 설정하는 제네릭 메서드로 재귀 방지 C #

  20. 20

    기본 클래스에서 제네릭 메서드를 호출하는 FSharp

  21. 21

    메서드의 반환 형식으로 C # 8에서 nullable 제네릭 형식을 허용하는 방법은 무엇입니까?

  22. 22

    제네릭 메서드에서 제네릭 유형을 확인하는 방법

  23. 23

    Java에서 다른 제네릭으로 생성자를 만드는 방법

  24. 24

    Forms에서 재사용하기 위해 메서드를 제네릭으로 변환

  25. 25

    기본 클래스의 메서드를 사용하여 중첩 클래스에서 제네릭 형식을 반환하는 방법

  26. 26

    반복기에 대한 제네릭 메서드를 구현하는 적절한 방법

  27. 27

    매개 변수 Array <Codable>로 제네릭 메서드를 선언하는 방법은 무엇입니까?

  28. 28

    제네릭 형식을 반환하는 제네릭 메서드를 만드는 방법

  29. 29

    SpringData 쿼리 메서드를 사용하여 A And (B 또는 C)와 같은 조건으로 쿼리를 작성하는 방법은 무엇입니까?

뜨겁다태그

보관