💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
在 Scala 中泛型概念与 Java 相同,泛型指将类型参数化。与 Java 不同,Scala 泛型类定义格式如下,以List 为例: ```scala class List[+A] +表示型变类型 ``` <br/> **1. 基本泛型类定义** ```scala class ClassA[A, B, C] ``` <br/> **2. 类型上界和下界** ```scala class ClassA class ClassC[P<:ClassA] // P必须是ClassA或者他的子类,所以ClassA是P的上界 class ClassD[P>:ClassA] // P必须是ClassA或者它的超类,所以ClassA是P的下界 ``` <br/> **3. 型变类型** ```scala 1. 协变 语法:class ClassA[+A] 如果A是B的子类,则ClassA[A]就是ClassA[B]的子类。 2. 逆变 语法:class ClassA[-A] 如果A是B的子类,则ClassA[A]就是ClassA[B]的父类。 3. 不变 语法:class ClassA[A] ```