[c#] 제네릭 타입과 제네릭 메서드

제네릭은 C#에서 강력한 기능 중 하나로, 타입이나 메서드를 일반화하는 기능을 제공합니다. 이를 통해 코드의 재사용성을 높일 수 있고, 타입 안정성을 보장할 수 있습니다.

제네릭 타입

제네릭 타입은 인자로 데이터형을 받는 클래스나 인터페이스를 말합니다. 일반적으로 T와 같은 식별자로 표시되며, 해당 식별자를 클래스나 인터페이스 내에서 사용하여 타입을 지정할 수 있습니다.

예를 들어, List<T> 클래스는 제네릭 타입입니다. 리스트 내부의 데이터 타입은 리스트를 초기화할 때 지정된 타입으로 결정됩니다.

List<int> numberList = new List<int>();

위의 예제에서 List<int>int 타입을 원소로 갖는 리스트를 생성합니다.

제네릭 메서드

제네릭 메서드는 하나 이상의 제네릭 타입 매개변수를 가지는 메서드를 말합니다. 이를 통해 여러 데이터 타입에서 동작하는 메서드를 작성할 수 있습니다.

public T GetFirstItem<T>(List<T> list)
{
    return list[0];
}

위의 예제에서 GetFirstItem 메서드는 T 라는 제네릭 타입을 사용하며, 해당 타입을 갖는 리스트에서 첫 번째 아이템을 반환합니다.

결론

제네릭 타입과 제네릭 메서드는 C#에서 코드의 재사용성과 타입 안정성을 높이는데 사용됩니다. 적절히 활용하면 보다 유연하고 안전한 코드를 작성할 수 있습니다.

참고 자료