[c#] 제네릭 클래스와 제네릭 인터페이스
제네릭 프로그래밍은 데이터 형식을 일반화하여 코드를 재사용할 수 있도록 돕는 프로그래밍 접근 방식입니다. C#에서 제네릭 프로그래밍을 지원하는 기능 중 중요한 것은 제네릭 클래스와 제네릭 인터페이스입니다.
제네릭 클래스
제네릭 클래스는 하나 이상의 형식 매개변수를 사용하여 정의됩니다. 이는 클래스의 필드, 속성, 메서드 및 이벤트에서 사용됩니다. 제네릭 클래스를 사용하면 다양한 데이터 형식에서 동작하는 클래스를 작성할 수 있습니다.
public class GenericClass<T>
{
private T _value;
public GenericClass(T value)
{
_value = value;
}
public T GetValue()
{
return _value;
}
}
위의 예시에서 GenericClass
는 형식 매개변수 T
를 사용하여 제네릭으로 정의되었습니다. 이 클래스는 어떤 형식의 데이터도 다룰 수 있습니다.
제네릭 인터페이스
제네릭 인터페이스는 인터페이스에서도 형식 매개변수를 사용할 수 있도록 합니다. 이를 통해 다양한 데이터 형식에서 동작하는 인터페이스를 정의할 수 있습니다.
public interface IGenericInterface<T>
{
T GetValue();
}
위의 예시에서 IGenericInterface
는 형식 매개변수 T
를 사용하여 제네릭으로 정의되었습니다. 이 인터페이스를 구현하는 클래스는 T
형식의 값을 반환하는 GetValue
메서드를 제공해야 합니다.
제네릭 클래스와 제네릭 인터페이스는 C# 프로그래밍에서 강력한 도구로, 코드의 유연성과 재사용성을 높일 수 있습니다.