Scala程式設計 有狀態的物件

2021-08-21 10:56:18 字數 399 閱讀 6779

純函式式物件與有狀態物件之間的本質差別

1 對純函式式物件呼叫方法或獲取其字段的值,將得到同樣的結果

2 對於有狀態的物件,方法呼叫或字段訪問的結果取決於之前已經執行過的操作

可能是有狀態物件

1 類中有var變數或者方法中存在有狀態物件

重新賦值的字段

1 非私有的var變數都有getter和setter,變數的修飾符隱藏是private[this]

如var hour = 10 getter方法為hour, setter方法為hour_=

2 初始化變數 var hello: float = _

有狀態物件和狀態物件

本部落格 有狀態就是有資料儲存功能。有狀態物件 stateful bean 就是有例項變數的物件 可以儲存資料,是非執行緒安全的。在不同方法呼叫間不保留任何狀態。其實就是有資料成員的物件。無狀態就是一次操作,不能儲存資料。無狀態物件 stateless bean 就是沒有例項變數的物件。不能儲存資料...

scala的物件導向程式設計

一 簡單的程式設計 1.scala的簡單程式設計 1 packageer2 3class people 9 def watchfootball teamname string string 12 13object two 22 2.效果 3.構造方法 主構造方法,輔助構造方法。輔助建構函式是在主建構...

SCALA物件導向程式設計(二)

五 隱式轉換和隱式函式 5.1隱式轉換 implicit def a d double d.toint 先宣告隱式函式,宣告後就不用管,程式過不去,會自動查詢。val i1 int 3.5 ok 當發現程式有誤時,scala編譯器會嘗試在隱式函式列表中查詢可以進行轉換的函式 注意 5.2利用隱式轉換...