【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关键字声明,直接访问内部变量。
相关推荐
芯路行者1 天前
7 HDLBits —— 验证:编写测试激励文件
fpga开发·verilog·fpga·hdlbits
芯路行者1 天前
4.1 HDLBits —— 时序逻辑电路之锁存器与触发器
fpga开发·verilog·fpga·hdlbits
芯路行者1 天前
5 HDLBits —— 构建更大的电路
fpga开发·verilog·fpga·hdlbits
芯路行者1 天前
4.3 HDLBits —— 时序逻辑电路之移位寄存器
fpga开发·verilog·fpga·hdlbits
芯路行者1 天前
4.2 HDLBits —— 时序逻辑电路之计数器
fpga开发·verilog·fpga·hdlbits
FPGA小迷弟2 天前
FPGA时序收敛实战:从约束编写到布局布线优化全流程
fpga开发·fpga·硬件开发
FPGA小迷弟2 天前
AXI4-Stream协议详解与Vivado自定义IP核封装实战
网络协议·tcp/ip·fpga开发·fpga·硬件开发
鬼手点金3 天前
FPGA常用型号参考
fpga开发·verilog·vivado·xilinx·vhdl·altera·lattice
FPGA-ADDA3 天前
雷通微系统推出RTSD2605:RFSoC + 英伟达GPU一体化信号处理平台
信号处理·fpga·rfsoc·zu47dr·47dr
FPGA小迷弟4 天前
Vivado中高速收发器GTX/GTH的配置与调试实战
fpga开发·fpga·硬件开发