scala的泛型应用场景

复制代码
用代码表示泛型类:

//泛型:类型参数化
//Pair约定一对数据
class Pair[T](var x:T,var y:T)
//class 类名(成员名:数据类型)--->class 类名[泛型名](成员名:泛型名)

/.参考代码:

/1.泛型类
object Test2{
  def main(args: Array[String]): Unit = {
    val p1 =new Pair[Int](1,2)
    val p2 =new Pair[Double](1.0,2.0)
    val p3 =new Pair[String]("abc","ccc")
    
  }
}

用代码表示泛型特质

/.参考代码:

/2.泛型特质
object Test3 {
  //定义一个日志
  //泛型特质,T是泛型名称,可以更改
  trait Logger[T]{
    val content:T
    def show():Unit
  }
  
  //定义一个类去实现特质
  class FileLogger extends Logger[String]{
    override val content: String = "file"
    override def show():Unit ={
      println(content)
    }
  }

  def main(args: Array[String]): Unit = {
    val fileLogger = new FileLogger()
    fileLogger.show()
  }
}
相关推荐
第九序言T7 小时前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
学长毕设7 小时前
基于springboot的食品仓库管理系统
java·spring boot·后端
滴滴答答哒8 小时前
ASP.NET Core + FaceRecognitionDotNet 人脸识别实战:DI 单例、特征向量持久化与 1:N 比对
后端·asp.net
龙亘川8 小时前
构建城市公共安全数字底座:亘川智城智慧安防系统全维度解读
java·大数据·开发语言·人工智能·信息可视化
程序喵大人8 小时前
【C++入门】内存模型与资源管理 - 09 shared_ptr 和 weak_ptr 解决共享,也带来代价
开发语言·c++·资源管理·智能指针·内存模型
Raas1009 小时前
AI网关部署方案?从部署到上线全流程
java·开发语言·人工智能·gateway·ai网关·企业级ai网关·企业级ai产品
专注仿真9 小时前
线性回归和逻辑回归算法详解
开发语言·人工智能·python·大模型训练·控制算法
jimy110 小时前
C++ 中的 `T&&`:右值引用与转发引用
开发语言·c++
captain37610 小时前
MyBatis操作数据库(入门2)
java·数据库·spring boot·后端·spring·mybatis
呆呆虫1210 小时前
用 orjson 加速 SerpBase 响应解析:基准对比与注意事项
开发语言·php