Contravariance et Covariance

Contravariance et Covariance

La covariance et la contravariance sont des termes qui font référence à la possibilité d'utiliser un type plus ou moins dérivé (plus ou moins spécifique) que celui spécifié à l'origine.

Covariance

Vous permet d'utiliser un type plus dérivé que celui spécifié à l'origine.

Vous pouvez assigner une instance de IEnumerable<Derived> à une variable de type IEnumerable<Base>.

Contravariance

Vous permet d'utiliser un type plus générique (moins dérivé) que celui spécifié à l'origine.

Vous pouvez assigner une instance de IEnumerable<Base> à une variable de type IEnumerable<Derived>.

Invariance

Signifie que vous pouvez utiliser uniquement le type spécifié à l'origine : pour un paramètre de type générique indifférent, il n'est ni covariant ni contravariant.

Vous ne pouvez pas attribuer une instance de IEnumerable<Base> à une variable de type IEnumerable<Derived> et inversement.

Commentaires

Posts les plus consultés de ce blog

Base de Données Sybase IQ

Sécurité des Applications

Principes de la Programmation Orientée Objet