用自身的通用性创造特征

时间:2019-07-16 12:09:57

标签: scala generics covariance f-bounded-polymorphism

在阅读一个新项目的代码时遇到了一个特征定义。有一个特征已定义了通用定义,该特征是类型由其自身的类型作为UpperBounded。特质定义为(名称更改):

这是如何工作的?这种通用定义会创建什么样的设计模式?

我尝试学习有关泛型,不变性,协方差和相反性的信息。

trait Membership[T <: Membership[T]] {

    // few methods ...

    def get[T](id: String): T = {

    }

}

0 个答案:

没有答案