2009-11-13 3 views

답변

5

인터페이스가 필요할 때 유용하지만 데이터 유형을 추상화해야합니다. 간단한 예

public interface IMyShape<T> 
{ 
    T X { get; } 
    T Y { get; } 
} 

public class IntSquare : IMyShape<int> 
{ 
    int X { get { return 100; } } 
    int Y { get { return 100; } } 
} 

public class IntTriangle : IMyShape<int> 
{ 
    int X { get { return 200; } } 
    int Y { get { return 200; } } 
} 

public class FloatSquare : IMyShape<float> 
{ 
    float X { get { return 100.05; } } 
    float Y { get { return 100.05; } } 
} 
+0

정말 좋은 예 – user196546

2

일반 인터페이스는 인터페이스의 멤버 중 하나의 유형을 매개 변수화하려는 경우에 매우 유용합니다. IEnumerableIEnumerable<T> 인터페이스를 고려하십시오. 첫 번째는 Objects을 반복하고 두 번째는 T에 제공된 유형 인수의 인스턴스를 반복합니다.

인터페이스가 일반화 될 수 있으므로 구체적인 유형의 경우와 동일한 방식으로 제네릭을 계속 활용하면서 유연성을 활용할 수 있습니다.

관련 문제