Scala的泛型类和泛型特质

1.Scala泛型类

Scala 复制代码
object Test5 {
  //格式
  //定义:类名[T]
  //使用:类名[类型]
  abstract class A[T](){
    val data : Array[T]
  }
  class A1 extends A [Int]{
    override val data : Array[Int]=Array(1,2,3)
  }
  class A2 extends A[String]{
    override val data=Array("a","b","c")
  }
  def main(args: Array[String]): Unit = {
    val a = new A1()
    val rs = a.data(1)
    println(rs)

    val b = new A2()
    val rs1 = b.data(1)
    println(rs1)
  }
}

2.Scala泛型trait

Scala 复制代码
//泛型trait
//定义格式:trait 特质名[泛型]
//使用格式:特质名[具体的类型]
object Test6 {
  trait Logger[T]{
    val name:T
    def show(b:T):Unit ={
      println(b)
    }
  }
  class A extends Logger[String]{
    override val name = "test"
  }
  def main(args: Array[String]): Unit = {
    val a1 = new A()
    a1.show("hi")
  }
}
相关推荐
曹牧几秒前
C#中解析JSON数组
开发语言·c#·json
aiopencode6 分钟前
iOS 应用如何防止破解?从逆向链路还原攻击者视角,构建完整的反破解工程实践体系
后端
Lear10 分钟前
【JavaSE】IO集合全面梳理与核心操作详解
后端
鱼弦11 分钟前
redis 什么情况会自动删除key
后端
ShaneD77116 分钟前
BaseContext:如何在Service层“隔空取物”获取当前登录用户ID?
后端
ShaneD77124 分钟前
解决idea错误提示:无法解析'表名'
后端
while(1){yan}28 分钟前
多线程CAS八股文
java·开发语言·面试
飞Link33 分钟前
【轻量拓展区】网络 QoS 与带宽、延迟、抖动:AI 推理的性能瓶颈
开发语言·网络·人工智能
李拾叁的摸鱼日常34 分钟前
从 Java 8 升级视角看Java 17 新特性详解
java·后端
淡定__00934 分钟前
深入理解 .NET 中的依赖注入(DI):从原理到实战
后端