Scala 上限
Scala对类型参数或类型变量有一些限制,即(类型界限), Upper bound 就是其中之一。通过实现类型边界,我们可以阐述类型变量的限制,这些类型边界限制了类型变量的确定值,并披露了这些类型成员的更多细节。上限是在类型参数上定义的。
语法
其中,’T’是一个类型参数,’S’是一个类型[T <: S]
意味着这个类型参数T必须与S相同或者是S的子类型。
让我们通过例子来理解上限。
例子
输出。
这里,Upper bound定义在ComputerSciencePortal类中,而GeeksforGeeks是Author的超级类,所以它不被接受。
例子
输出。
在这里,我们在班级学校中定义了上限,即[T <: Teacher]
,这意味着 显示 方法接受教师类对象或它的子类(即学生),这意味着教师的超类将不被接受。因此,如果教师的超类,即校长没有被评论,那么它将显示类型不匹配的错误。