Scala的多态

从编译的角度解释Scala的多态含义:在执行期间而非编译期间确定所引用对象的类型,根据实际类型调用其方法。一个编译型语言有两种类型,分别为编译类型和运行类型。程序中定义的引用变量所指向的具体类型和通过该变量发出的方法调用在编译时不确定,而是在程序运行期间才确定的。

Scala 复制代码
class Animal(){
  var name=""
  def run():Unit={
    println("animal run.....")
  }
}
//继承
//1.不劳而获
class Dog extends Aniaml(){
  //重写父类方法
  override def run():Unit={
    println("dog is running...")
  }
}
class Cat extends Aniaml(){
  override def run():Unit={
    println("cay is  running...")
  }
}
object bbb {
  def main(args: Array[String]): Unit = {
    val d1=new Dog()
    val c1=new Cat()
    run(d1)
    run(c1)

  }
  def run(obj:Aniaml):Unit={
    obj.run()
  }
}
相关推荐
山甫aa12 小时前
Java的包和import
java·开发语言
cpp_learner12 小时前
QT 窗体遮罩
后端
mumu_wangwei13 小时前
【QFS】Golang自研的QFS分布式文件系统,QFS文件系统使用
开发语言·后端·golang
兰令水13 小时前
topcode【随机算法题】【2026.5.24打卡-java版本】
java·开发语言·算法
hef28813 小时前
Java Switch和Break语句用法详解:从入门到实战
java·开发语言
techdashen13 小时前
在 Rust 异步接口的丛林中生存:从同步 I/O 到手写异步状态机
开发语言·后端·rust
EnCi Zheng13 小时前
09a-斯坦福 CS336 作业一:BPE分词器
开发语言·python·算法
为思念酝酿的痛14 小时前
Linux线程
linux·服务器·后端
小江的记录本14 小时前
【Kafka核心】Kafka 3.0+ KRaft模式(替代ZooKeeper)核心原理与优势
java·数据库·分布式·后端·zookeeper·kafka·rabbitmq
星栈14 小时前
我在 Rust 全栈项目里用 JWT 做无状态认证
前端·后端·全栈