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")
  }
}
相关推荐
知识分享小能手5 小时前
C++ 学习教程,从入门到精通,string类和标准模板库 — 完整知识点详解(16)
开发语言·c++·学习
qq_401700415 小时前
Qt 炫酷曲线,图表,2D/3D开源库
开发语言·qt
liangshanbo12155 小时前
面试题:线上 JavaScript 报错如何快速定位到源码?
开发语言·javascript·ecmascript
weixin_440730505 小时前
迭代器Iterator(列表生成器、可迭代的如何生成迭代器)
开发语言·python
朝朝辞暮i5 小时前
C++ 第 31C 课:Subscriber 到底是什么
开发语言·c++·算法
weixin_440730506 小时前
内置函数、json文本、pickle二进制
开发语言·python·json
殷色玫瑰6 小时前
C++ string类详解:常用接口、字符串操作与模拟实现
java·linux·c语言·开发语言·数据结构·c++
李游Leo6 小时前
HarmonyOS 7 + Spatial Recon Kit-C++:3DGS 高斯参数的非有限值隔离与可渲染性门禁【鸿蒙心迹】
开发语言·c++·3d·harmonyos
时间的拾荒人6 小时前
Qt 文件操作详解:从基础类到读写实战
开发语言·qt·面试
Wang's Blog7 小时前
Java 项目实战: 外卖平台优化-YApi接口管理平台与文档导入导出
java·开发语言·yapi