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()
  }
}
相关推荐
FfHUCisI5 分钟前
Go 编译过程全景
开发语言·后端·golang
FfHUCisI6 分钟前
Golang 语法分析与 AST:Parser 与 go/ast
开发语言·后端·golang
lemon_sjdk1 小时前
ObjectProperty
java·开发语言·算法
大模型码小白1 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring
hh9501 小时前
Agent Plan x DeepSeek Harness:Agent 供应链安全与第三方插件审计
java·开发语言·安全·agent plan·adg成都社区·adg社区
「QT(C++)开发工程师」2 小时前
C++ std::move 详解
开发语言·c++
matlab代码2 小时前
基于matlab的玉米种子计数设计(GUI界面)【源码58期】
开发语言·matlab
c#上位机2 小时前
C#上位机项目实战——C#的dll项目编译时拷贝到指定目录下
开发语言·c#
Littlehero_1212 小时前
QT自定义控件之内嵌报表(4)(源码开源)
开发语言·qt