//题目:设计一个Point类,其x和y可以通过构造器提供。在设计一个子类LablePoint它来继承Point类,其构造器接收一个标签值和x,y坐标。 //构造函数中的参数,如果加了val,var就是自动成为类的成员 class Point(val x: Int, val y: Int) { override def toString: String = s"Point(x=$x, y=$y)" } //val 需要加在label前面,是原因label是这个子类的成员 //x,y前面不要加val,原因它会从Point中继承过来 //Point(x,y)中的x,y不要加数据类型,它就表示函数的调用 class LabeledPoint(val label: String, x: Int, y: Int) extends Point(x, y) { override def toString: String = s"LabeledPoint(label=$label, x=$x, y=$y)" } object dhdsj { def main(args: Array[String]): Unit = { val point = new Point(1, 2) val labeledPoint = new LabeledPoint("black", 1, 2) println(point) println(labeledPoint) } }