닷넷 4.0 공변성(Covariance)과 반공변성(Contravariance)
닷넷 4.0에서 In, Out 키워드가 추가되었다. Out 키워드는 공변성을, In 키워드는 반공변성을 나타낸다. 키워드 추가는 기존의 공변성과 반공변성의 모호성을 해결하고 결과물을 쉽게 유추할 수 있게 되었다. 이 키워드들은 제네릭 인터페이스 및 제네릭 델리게이트 이외의 일반 제네릭 매개변수 유형에는 사용할 수 없다. 다음은 사전적 의미의 공변성과 반공변성을 그림으로 쉽게 표현해 보았다. [사전적 의미] Covariant : (다른 변인과) 함께 변하는, 공변(共變)하는 공변성의 쓰임 : 메서드의 반환형식이 원래 지정된 것보다 더 많은 파생 형식을 사용할 수 있는 기능으로 제네릭 인터페이스 및 델리게이트의 형식매개변수에 대응하는 메서드의 반환형식 또는 읽기 전용 속성에 사용된다. 상속관계가 형성되면 상..
.Net Framework/.Net Framework 4.0
2010. 11. 10. 23:48