構造函數參數列表
- 對於var修飾的參數:外部可讀/可改寫 (其實是:編譯器爲該類參數(字段)自動生成了getter和setter)
- 對於val修飾的參數:外部可讀/不可改寫(其實是:編譯器爲該類參數(字段)只生成了getter沒有生成setter)
- 對於private var修飾的參數:內部可讀/可改寫 (編譯器不會爲私有類參數(字段)自動生成getter和setter)
- 對於private val修飾的參數:內部可讀/不可改寫 (編譯器不會爲該類參數(字段)自動生成getter和setter)
多構造函數
package com.test.scalaw.test.demo
/**
* scala定義多個構造函數,
* 另外,Scala中有隻有一個主要構造函數,其餘都是輔助構造函數。並且須要注意的是,輔助構造函數必須調用主構造函數或者經過this(…)之間相互調用
*/
class Point(x:Int,y:Int) {
var x1:Int = x
var y1:Int = y
def this(xc:Int) {
this(xc,0)//這個必需要
println("我是構造函數")
}
override def toString(): String = "(" + x + ", " + y + ")"
}