scala class 和 object的區(qū)別

class Counter {
    private var value = 0 
    def increment(step: Int): Unit = { value += step}
    def current(): Int = { value }
}
object MyCounter{
    def main(args:Array[String]){
        val myCounter = new Counter
        myCounter.increment(5)
        println(myCounter.current)
    }
}

scala 中沒有 static 關(guān)鍵字對于一個class來說,所有的方法和成員變量在實例被 new 出來之前都是無法訪問的因此class文件中的main方法也就沒什么用了,scala object 中所有成員變量和方法默認都是 static 的所以 可以直接訪問main方法。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容