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")
  }
}
相关推荐
飞由于度19 分钟前
C#编程报错- “ComboBox”是“...ComboBox”和“...ComboBox”之间的不明确的引用
开发语言·c#
阿芯爱编程1 小时前
最大子数组的值
后端·算法·面试
Invulnerabl_DL1 小时前
C++ STL学习
开发语言·c++·学习·stl
steamedobun1 小时前
【爬虫】selenium打开浏览器以及页面
开发语言·python·selenium
智慧老师1 小时前
数据结构第一弹-数据结构在不同领域的应用
开发语言·数据结构·python
caifox2 小时前
C# 探险之旅:第十四节 - 函数介绍
开发语言·c#
zi__you2 小时前
【Python网络爬虫 常见问题汇总】
开发语言·爬虫·python
水w3 小时前
微服务之间的相互调用的几种常见实现方式对比 2
java·开发语言·后端·微服务·架构
梧桐树04293 小时前
python面向对象高级编程:使用@property
开发语言·python
潘多编程3 小时前
SpringBoot 3.2:CRaC技术助力启动速度飞跃
java·spring boot·后端