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()
  }
}
相关推荐
东小西7 分钟前
【SAA实战】第 2 篇:模型与消息——ReactAgent 怎么挑模型、怎么传消息
java·后端·spring
LabVIEW开发11 分钟前
LabVIEW按段拆分TDMS文件的格式边界与重构
开发语言·数据库·重构·labview·labview知识·labview功能·labview程序
qo_tn14 分钟前
Docker_02-容器操作_11-怎样进入容器执行命令
后端
架构精进之路17 分钟前
Claude Code 深度使用指南:从"会用"到"用好"的7个进阶心法
后端·openai·ai编程
明月_清风22 分钟前
看完 DSH 文档后,我总结了这 7 个关键点
前端·后端·deepseek
元界metalite22 分钟前
Spring-MVC微服务接口怎么分层-网关Controller与Service边界
后端
asdzx6723 分钟前
使用 Python 为 Excel 添加各类数据验证规则
开发语言·python·excel
Romantic_love_23 分钟前
理解USART真实收发过程
开发语言·stm32·单片机·学习
省长35 分钟前
不想写代码,但想要集成一个登录页面?Sa-Token-Quick-Login 帮你实现!
java·后端·开源
铁皮饭盒38 分钟前
浏览器AI肯定离不开onnxruntime, 微软开源
前端·javascript·后端