프로그래밍에서 '공변성(Covariance)'과 '반공변성(Contravariance)'이란?
어려움 freeCodeCamp해설
공변성(Covariance)은 Cat이 Animal의 하위 타입이면 List<Cat>도 List<Animal>의 하위 타입이 되는 관계입니다. 반공변성(Contravariance)은 반대로, Consumer<Animal>이 Consumer<Cat>의 하위 타입이 됩니다. 이는 타입 안전한 제네릭 사용에 중요한 개념입니다.