Scala 协变与逆变:'+' 和 '-' 符号详解
在 Scala 中,'+' 表示协变,'-' 表示逆变。
协变表示类型参数随着父类型的变化而变化,例如 List[+A] 表示 List 是一个协变类型。如果类型 A 是子类型 B 的父类型,那么 List[A] 就是 List[B] 的子类型。
逆变表示类型参数随着父类型的变化而相反变化,例如 Function1[-A, +B] 表示 Function1 是一个逆变类型。如果类型 A 是子类型 B 的父类型,那么 Function1[B, C] 就是 Function1[A, C] 的子类型。
原文地址: https://www.cveoy.top/t/topic/j7X0 著作权归作者所有。请勿转载和采集!