日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

scala:对象object

發布時間:2025/3/8 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 scala:对象object 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Scala沒有靜態方法或字段,可以用對象object(首字母小寫)結構完成類似的功能。

object M {var count = 0;def inc = {count += 1; count}def main(args: Array[String]){println(M.count)M.incprintln(M.count)} }

對象的構造器在對象第一次被使用時調用,如果對象從未被使用,構造器也不會執行。
對象可以擴展類或者特質,但不能提供構造器參數。

class A{var i = 0; }object M extends A{def main(args: Array[String]){i = 4println(M.i)} } //輸出:4

伴生對象

class T private(val i: Int){ } //不可以用new關鍵字獲取此類的實例object T{def apply(i: Int) = {new T(i)} }

伴生對象和類同名,且可以和類相互訪問私有特性。類和伴生對象必須存在于同一個源文件中。
類調用伴生對象的屬性用:對象名.屬性

每一個Scala程序必須從一個對象的main方法開始執行,這個方法類型為Array[String] => Unit
若不自己定義main方法,也可以擴展App特質,將要執行的程序代碼放入構造器內。

object T extends App{println("hello world.")println(args.length) }

App特質有args成員變量,存儲命令行參數,類型為Array[String]

如下可以顯示程序運行時間(前提是類擴展了App特質):

scala -Dscala.time 類名 命令行參數

轉載于:https://www.cnblogs.com/xuejianbest/p/10285094.html

總結

以上是生活随笔為你收集整理的scala:对象object的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。