【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小迷弟6 小时前
FPGA 与卫星:从星载硬件到在轨智能的完整技术解析
fpga开发·架构·fpga·1024程序员节·无线电
LabVIEW开发1 天前
FlexRIO 在轨图像取舍:判决要跑在数据进内存之前
labview·fpga·labview功能·labview程序·flexrio
FPGA小迷弟1 天前
FPGA 与无线电:从软件定义无线电到 5G 基带的硬件实现之路
5g·fpga开发·架构·dsp开发·fpga·无线电
yingheceping1 天前
2026 国产 FPGA 核心板怎么选?工控/视觉/通信/科研,四场景对板指南
fpga开发·fpga
FPGA小徐2 天前
FPGA离散数列信源熵:原理、计算与硬件实现全解
fpga
t_niu_niu3 天前
bilateral_filter_paper
图像处理·verilog·双边滤波器
FPGA小徐3 天前
【FPGA数字信号处理】离散信源香农熵计算:原理详解 + 纯Verilog可综合实现 + 全套仿真代码
fpga
FPGA小迷弟5 天前
FPGA开发Vivado Block Design/Vitis/SDK/xlinx/开发教程,保姆级别,一看就会!
网络协议·tcp/ip·fpga开发·verilog·fpga
FPGA小迷弟5 天前
基于FPGA实现智能网卡的概念,什么是智能网卡
网络协议·tcp/ip·fpga开发·verilog·fpga
hi冻鱼6 天前
PCIe + DDR架构(一):实测——块长从4 KiB 换 1 MiB,带宽从133 MB/s 涨到 3179 MB/s
性能测试·fpga·pcie·mig·xdma·1024程序员节·ddr3