1 Scala中靜態的概念-伴生對象
Scala語言是完全面向對象(萬物皆對象)的語言,所以並沒有靜態的操作(即在Scala中沒有靜態的概念)。
但是為了能夠和Java語言交互(因為Java中有靜態概念),就產生了一種特殊的對象來模擬類對象,我們稱之為類的伴生對象。
這個類的所有靜態內容都可以放置在它的伴生對象中聲明和調用
伴生對象的快速入門

伴生對象的小結
1)Scala中伴生對象采用object關鍵字聲明,伴生對象中聲明的全是 "靜態"內容,可以通過伴生對象名稱直接調用。
2)伴生對象對應的類稱之為伴生類,伴生對象的名稱應該和伴生類名一致。
3)伴生對象中的屬性和方法都可以通過伴生對象名(類名)直接調用訪問
4)從語法角度來講,所謂的伴生對象其實就是類的靜態方法和成員的集合
5)從技術角度來講,scala還是沒有生成靜態的內容,只不過是將伴生對象生成了一個新的類,實現屬性和方法的調用。
6)從底層原理看,伴生對象實現靜態特性是依賴於 public static final MODULE$ 實現的。
7)伴生對象的聲明應該和伴生類的聲明在同一個源碼文件中(如果不在同一個文件中會運行錯誤!),但是如果沒有伴生類,也就沒有所謂的伴生對象了,所以放在哪里就無所謂了。
8)如果 class A 獨立存在,那么A就是一個類, 如果 object A 獨立存在,那么A就是一個"靜態"性質的對象[即類對象], 在 object A中聲明的屬性和方法可以通過 A.屬性 和 A.方法 來實現調用
9)當一個文件中,存在伴生類和伴生對象時,文件的圖標會發生變化

伴生對象-apply方法
在伴生對象中定義apply方法,可以實現: 類名(參數) 方式來創建對象實例.

