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()
  }
}
相关推荐
一条小小yu12 小时前
Spring IoC的理解
java·后端·spring
落魄实习生12 小时前
Agent Scope Java 2.x 系列【7】工具使用
java·开发语言·ai
茉莉玫瑰花茶13 小时前
GO [ 方法 ]
开发语言·后端·golang
Wx-bishekaifayuan13 小时前
django个性化旅游路线推荐平台49005-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
Eric_见嘉13 小时前
在职前端 Skill 和 MCP 分享
前端·后端·agent
狗凯之家源码网13 小时前
微博图床 PHP 系统搭建与实战应用指南
android·开发语言·php
孟健15 小时前
出海开发者资金合规:从港卡结汇到完税申报实操
后端·架构
乌暮15 小时前
深入理解 Java 泛型:把「万能盒子」用对、用稳
java·开发语言·后端·学习
架构技术专栏15 小时前
Skill 有效性与稳定性评估:用对照、重复与证据判断价值
后端
2601_9622186115 小时前
C语言中三种库的编译和使用方法
开发语言·c++