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()
  }
}
相关推荐
小白学大数据4 分钟前
超简单:用 Python 让 Excel 飞起来:用 openpyxl 把重复报表整理交给脚本
开发语言·数据库·python·excel
oliver_sys_log8 分钟前
RocketMQ 4.5.1 延迟消息"发送成功但消费不到"排查分析报告
后端·rocketmq
码上观网10 分钟前
VXLAN 中的 ARP 代答:从原理到 SONiC 代码实现
后端
旧梦952714 分钟前
Java SortedMap 接口详解:从入门到实战
java·开发语言
莫陌尛.18 分钟前
Java_this构造方法
java·开发语言
计算机毕设定制辅导-无忧学长39 分钟前
《基于SpringBoot的马术俱乐部管理系统》
java·spring boot·后端
摇滚侠41 分钟前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 JDBC 事务管理 阅读笔记 33
spring boot·笔记·后端
Persistent的粽子!42 分钟前
C++:类与对象(二)
开发语言·c++
Dreams°1231 小时前
【Java后端+Vue前后端分离:内网正常、公网访问异常|5个高频经典踩坑完整复盘】
java·开发语言·vue.js
学长毕业设计1 小时前
基于SpringBoot的民间艺术传承管理系统(源码+文档+讲解视频)
java·spring boot·后端