검증 가능성과 제약조건 public static bool Min(T o1, T o2) { if (o1.CompareTo(o2) < 0) return o1; else return o2; } 위와같은 제너릭 메서드는 문제가 있다. T==0 으로 비교하는 과정에서 o1과 o2가 compareTo를 사용할 수 있는 타입인지 알 수 없기 때문이다. 따라서 CLR 은 제약조건이라는걸 제공해줘서 타입의 종류를 제한할 수 있게 해준다. public static T Min(T o1, T o2) where T : IComparable { if (o1.CompareTo(o2) < 0) return o1; else return o2; } 위처럼 where 토큰을 이용하여 T를 IComparable 인터페이스를 구현한 타입으로..