继承
package com.jason.qianfeng class Point(val xc: Int, val yc: Int) { var x: Int = xc var y: Int = yc def move(dx: Int, dy: Int): Unit = { x = x + dx y = y + dy println(s"x : $x , y : $y") } } class Location(override val xc: Int, override val yc: Int, val zc: Int) extends Point(xc, yc) { var z = zc def move(dx: Int, dy: Int, dz: Int): Unit = { x = x + dx y = y + dy z = z + dz println(s"x : $x , y : $y , z : $z") } } object TestPoint { def main(args: Array[String]): Unit = { val obj = new Location(1, 2, 3) obj.move(2, 3, 4) val obj2 = new Point(2,3) println(obj.isInstanceOf[Point]) println(classOf[Point]) } }
1.若继承了父类的属性,则需要加override关键字 ,如下:
class Location(override val xc: Int, override val yc: Int, val zc: Int) extends Point(xc, yc)
2.子类继承了父类的属性和方法
3.final修饰的类,属性,方法不可重写
欢迎转载,不必注明出处