协变
在看到 Scala入门到精通——第二十一节 类型参数(三)-协变与逆变 这篇文章时,对协变
更加了解了。
里面提到参数如果定义成协变时会造成原来的调用不成功。我的理解是因为原来的调用的参数范围更广,
但是在父类指向子类时,因为子类的同样函数的参数范围小所以会报错。
逆变
在提到返回类型定义成逆变会报错,我的理解是如果定义成逆变,那么原来调用此函数的地方如果限定
是父类的类型的话会报错,因为父类指向子类后调用此函数后返回的类型范围更广,所以会导致报错
在看到 Scala入门到精通——第二十一节 类型参数(三)-协变与逆变 这篇文章时,对协变
更加了解了。
里面提到参数如果定义成协变时会造成原来的调用不成功。我的理解是因为原来的调用的参数范围更广,
但是在父类指向子类时,因为子类的同样函数的参数范围小所以会报错。
在提到返回类型定义成逆变会报错,我的理解是如果定义成逆变,那么原来调用此函数的地方如果限定
是父类的类型的话会报错,因为父类指向子类后调用此函数后返回的类型范围更广,所以会导致报错