В каких случаях можно использовать контр-дисперсию? Зачем использовать ковариацию против наследования? - PullRequest
1 голос
/ 18 июня 2020

Может ли кто-нибудь привести пример, когда полезно противоречие? и зачем использовать ковариацию против наследования?

1 Ответ

2 голосов
/ 18 июня 2020

Может ли кто-нибудь привести пример, когда полезно противоречие?

Контра-дисперсия бесполезна. Это просто свойство, которое есть у некоторых конструкторов типов.

Некоторые целые числа нечетные, некоторые четные. Это просто свойство, которым обладают эти целые числа.

Точно так же некоторые конструкторы типов ковариантны в параметре типа или противовариантном. (Или инвариант.)

и зачем использовать ковариацию […]?

Это тоже не то, что вы используете. Это просто то, что равно .

и зачем использовать ковариацию против наследования?

Этот вопрос действительно не имеет смысла. Не только по указанной выше причине (ковариация - это просто то, что равно , а не то, что вы используете), но и из-за связи между ними: дисперсия - это то, что является следствием взаимодействия полиморфизма подтипа и параметра c полиморфизма.

...