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()
  }
}
相关推荐
wdfk_prog7 分钟前
嵌入式面试真题第 10 题:高优化等级下共享状态可见性、内存模型与系统级同步设计
java·linux·开发语言·面试·职场和发展·架构·c
谭光志1 小时前
Vibe Coding 时代,程序员该何去何从
前端·后端·ai编程
GoGeekBaird2 小时前
我用 BeeWeave 跑完了一次完整写作闭环
后端·github
仿生狮子3 小时前
别再说“全栈”了,AI 时代团队只认这 5 种人
前端·人工智能·后端
许彰午3 小时前
95_Python内存管理与垃圾回收
开发语言·python
多加点辣也没关系4 小时前
JavaScript|第13章:原始类型的方法
开发语言·javascript·ecmascript
এ慕ོ冬℘゜4 小时前
深入理解 JavaScript 事件体系:Window、鼠标与键盘事件详解
开发语言·javascript·okhttp
chouchuang5 小时前
day-030-综合练习-笔记管理器
开发语言·笔记·python
Reart6 小时前
Leetcode 213.打家劫舍2(内含闲谈,打劫真是技术活,好题,716)
后端·算法
触底反弹6 小时前
🔥 RAG 到底是怎么工作的?掰开揉碎了给你讲明白!
javascript·人工智能·后端