【Scala 】3. 类和对象

3. 类和对象

scala是一种面向对象的函数,其中一部分就是scala语言中支持类的实现。

3.1 类的继承

(1)基类(父类)

类中包含实现面积的计算方法

scala 复制代码
class Shape {  
  def getArea():Float = {  
    return 0  
  }  
}
(2)子类

子类继承父类的函数的实现,不再声明返回值类型,采用extends关键字;

但是面积的实现方式覆盖父类的实现,采用override关键字。

scala 复制代码
class Rect(a: Int, b: Int) extends Shape {  
  var length = a;  
  var width = b;  
  override def getArea(): Float = {  
    return length * width;  
  }  
  
}

上面的例子中声明一个类继承字Shape类,内部变量进行拓展。

  • 调用方式:类名.方法名(参数列表)
scala 复制代码
object test {  
  def main(args: Array[String]) = {  
    val rect = new Rect(7, 2);  
    
    println("the area of rectangle is " + rect.getArea());  
  }  
}
  • case类:不需要使用new关键字声明,直接访问内部变量。
相关推荐
FPGA小迷弟2 天前
FPGA开发Vivado Block Design/Vitis/SDK/xlinx/开发教程,保姆级别,一看就会!
网络协议·tcp/ip·fpga开发·verilog·fpga
FPGA小迷弟2 天前
基于FPGA实现智能网卡的概念,什么是智能网卡
网络协议·tcp/ip·fpga开发·verilog·fpga
hi冻鱼3 天前
PCIe + DDR架构(一):实测——块长从4 KiB 换 1 MiB,带宽从133 MB/s 涨到 3179 MB/s
性能测试·fpga·pcie·mig·xdma·1024程序员节·ddr3
FPGA小迷弟3 天前
用 Claude Code 重构遗留系统:从评估到落地的完整指南
fpga开发·dsp开发·fpga·1024程序员节·sdr·无线电
十@八九4 天前
VS Code 接入 AMD Vivado 2026.1 AI 助手:从 VSIX 到 MCP 实战
人工智能·fpga·vs code·vivado·mcp
Enclustra_China4 天前
FPGA设计的隐藏难题:算力、功耗与散热如何平衡?
fpga开发·fpga·fpga解决方案
Nefu_lyh7 天前
【Spark】02Spark 下载和入门:环境配置、简单的Spark独立应用(Scala版)
大数据·spark·scala
泡泡糖的中文规格书8 天前
HDLbits 1.2 学习笔记
fpga开发·学习笔记·verilog
泛联新安11 天前
VHawk-CDC:FPGA跨时钟域检查怎么选?
fpga·亚稳态·fpga验证
星夜离尘5613 天前
流水线 valid 对齐自检:输入气泡和中途复位怎么测
fpga·systemverilog·流水线·vivado·testbench