Pytania otagowane jako contravariance

4
Dlaczego kowariancja i kontrawariancja nie obsługują typu wartości
IEnumerable<T>jest kowariancją, ale nie obsługuje typu wartości, tylko typ referencyjny. Poniższy prosty kod został pomyślnie skompilowany: IEnumerable<string> strList = new List<string>(); IEnumerable<object> objList = strList; Ale zmiana z stringna intspowoduje błąd kompilacji: IEnumerable<int> intList = new List<int>(); IEnumerable<object> objList = intList; Powód jest wyjaśniony w MSDN : Wariancja dotyczy tylko …



2
Problem z rozumieniem kontrawariancji kowariancji za pomocą typów ogólnych w języku C #
Nie mogę zrozumieć, dlaczego nie można kompilować następującego kodu C #. Jak widać, mam statyczną metodę ogólną Coś z IEnumerable<T>parametrem (i Tjest ograniczone jako IAinterfejs), a tego parametru nie można niejawnie przekonwertować na IEnumerable<IA>. Jakie jest wyjaśnienie? (Nie szukam obejścia, tylko po to, aby zrozumieć, dlaczego to nie działa). public …

3
Kowariancja, niezmienność i kontrawariancja wyjaśnione prostym językiem angielskim?
Dzisiaj przeczytałem kilka artykułów na temat kowariancji, kontrawariancji (i niezmienności) w Javie. Przeczytałem artykuł w angielskiej i niemieckiej Wikipedii oraz kilka innych postów na blogu i artykułów z IBM. Ale nadal jestem trochę zdezorientowany, o co dokładnie chodzi? Niektórzy mówią, że chodzi o relacje między typami i podtypami, niektórzy mówią, …

2
W jaki sposób generyczna kowariancja i kontrawariancja jest implementowana w C # 4.0?
Nie uczestniczyłem w PDC 2008, ale usłyszałem wiadomości, że C # 4.0 ma obsługiwać kowariancję i kontrwariancję rodzajową. Oznacza to, że List<string>można przypisać do List<object>. Jak to możliwe? W książce Jona Skeeta C # in Depth wyjaśniono, dlaczego typy generyczne języka C # nie obsługują kowariancji i kontrawariancji. Służy głównie …

3
Podaj przykłady funkcji, które demonstrują kowariancję i kontrawariancję zarówno w przypadku przeciążania, jak i nadpisywania w Javie? [Zamknięte]
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 5 lat temu . Popraw to pytanie Proszę pokazać dobry przykład kowariancji i kontrawariancji w Javie.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.