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")
  }
}
相关推荐
磨十三1 天前
C++ 容器详解:std::list 与 std::forward_list 深入解析
开发语言·c++·list
Yeats_Liao1 天前
Go语言技术与应用(二):分布式架构设计解析
开发语言·分布式·golang
脚踏实地的大梦想家1 天前
【Go】P6 Golang 基础:流程控制
开发语言·golang
信息快讯1 天前
“COMSOL+MATLAB光子学仿真:从入门到精通,掌握多物理场建模
开发语言·matlab·comsol·光学工程
LK_071 天前
【Open3D】Ch.3:顶点法向量估计 | Python
开发语言·笔记·python
小码哥0681 天前
智能化招聘系统设计与实现-Java
开发语言·python
北山太湖1 天前
Matlab安装硬件支持包
开发语言·matlab
CryptoRzz1 天前
越南k线历史数据、IPO新股股票数据接口文档
java·数据库·后端·python·区块链
QX_hao1 天前
【Go】--数组和切片
后端·golang·restful