1.Swift中的get & set 方法
定義一個Person類
class Person: NSObject { //getter & setter 僅供演示,日常開發不用 var _name: String? var name: String? { get{ //返回成員變量 return _name; } set{ //使用 _成員變量 記錄值 _name = newValue; } }}2.只讀屬性 readonly,計算型屬性class Person: NSObject { var name: String? //OC中定義屬性的時候,readonly,重寫getter方法 var title: String { //之重寫了getter方法,沒有重寫setter方法 //就是只讀屬性 get{ return "Mr." + (name ?? ""); } } //只讀屬性的簡寫,直接 return //又稱為計算型屬性,本身不儲存內容,都是通過計算獲得結果 //類似于一個函數,沒有參數,有返回值 var titleTwo: String { return "xxxx" + (name ?? ""); }}3.計算型屬性和懶加載的區別計算型屬性,本身不儲存內容,都是通過計算獲得結果,類似于一個函數,沒有參數,有返回值。
懶加載會在第一次訪問執行,閉包結束后,會把結果存在屬性中,后續調用,直接返回屬性的內容,懶加載的屬性會分配空間存儲值。
新聞熱點
疑難解答