Scala的多态概述

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("cat is running...")
  }
}
object day13 {
  def main(args: Array[String]): Unit = {
    val d1 = new Dog()
    val c1 = new Cat()
    //d1.run()=多态
    //定义函数:一个函数的参数是一个对象
    run(d1)
    run(c1)
  }
  def run(obj:Animal):Unit = {
    obj.run()

  }

}
相关推荐
篱笆院的狗18 分钟前
Java 中如何创建多线程?
java·开发语言
默 语19 分钟前
RAG实战:用Java+向量数据库打造智能问答系统
java·开发语言·数据库
晨晖221 分钟前
二叉树遍历,先中后序遍历,c++版
开发语言·c++
醒过来摸鱼21 分钟前
Java Compiler API使用
java·开发语言·python
wangchen_025 分钟前
C/C++时间操作(ctime、chrono)
开发语言·c++
Java水解35 分钟前
Dubbo跨机房调用实战:从原理到架构的完美解决方案
后端·dubbo
Dev7z36 分钟前
基于MATLAB HSI颜色空间的图像美颜系统设计与实现
开发语言·matlab
superman超哥38 分钟前
仓颉语言中字符串常用方法的深度剖析与工程实践
开发语言·后端·python·c#·仓颉
AskHarries1 小时前
Claude CLI 使用指南(Step by Step)
后端·ai编程
想学后端的前端工程师1 小时前
【Spring Boot微服务开发实战:从入门到企业级应用】
java·开发语言·python