-
類型方法,定義的時候關(guān)鍵字是static func 調(diào)用的時候使用類名調(diào)用查看全部
-
self是類Player的實例 static定義的屬性是類型屬性只能被類調(diào)用,不能被實例調(diào)用 類型屬性的調(diào)用不能省略Player,實例屬性的調(diào)用可以省略self查看全部
-
類的計算型屬性不一定要寫getter和setter方法,例如面積,只要返回一個double的值既可以了,因此只要一個getter方法 用方法也能實現(xiàn)計算型屬性的計算過程,為什么不用方法實現(xiàn)而是用計算型呢,因為方法用來描述動作,而計算型屬性表示的是事物的特征和屬性查看全部
-
計算型屬性的getter方法和setter方法: get{}里面的邏輯是獲取這個計算型屬性的時候走的計算邏輯,return一個計算型屬性類型的值 set(newCenter){}里的方法是給計算型屬性賦值的時候走的計算邏輯,set后的括號里的名字就是替代計算屬性進行邏輯運算的值 如果不給set方法加參數(shù),那么可以默認參數(shù)為newValue查看全部
-
類提示查看全部
-
注釋不同類型查看全部
-
子類構(gòu)造函數(shù)的繼承原則查看全部
-
由于center的值是由origin和size決定的,所以每次origin或者size變化,必須計算center的值,重新賦值 因此可以把center設(shè)置成一個由origin和size計算得來的值,這樣就不用每次計算center了 計算型屬性的必須是var類型 注意:計算型屬性定義的格式:var 名字:類型{ 計算過程 return 類型函數(shù)} 計算型屬性必須顯式的聲明它的類型查看全部
-
描述值:位置,溫度,坐標(biāo)等等用結(jié)構(gòu)體 描述物體:人,商店,車,動物等用類查看全部
-
兩次初始化得到的兩個類的實例即使所指向的空間的內(nèi)容一樣,但是是兩塊不同的空間,可以用!==判斷是否是不在同一塊空間,并且引用類型依然不能用==判斷查看全部
-
引用類型的值的比較不可以用==,因為==是用于值類型比較的 引用類型可以用===比較是否等價,但是不是值得比較,而是判斷是否指向同一塊空間查看全部
-
枚舉類型在方法里面改變自己的話也需要用mutating修飾查看全部
-
結(jié)構(gòu)體自己修改自己會遇到問題 需要用關(guān)鍵字mutating來修飾方法,告訴編譯器,這個方法要自己修改自己 原因是:結(jié)構(gòu)體是值類型,修改一次就會產(chǎn)生一個副本,副本的處理編譯器不能自動完成,而mutating的作用就是告訴編譯器用修改后的值自動覆蓋原來的值 如果是引用類型自己修改自己就不需要這樣做,因為修改后指針自動指向下一個新的值了查看全部
-
類的引用類型的特點 1、結(jié)構(gòu)體中要想改變結(jié)構(gòu)體實例的變量的值,需要具備實例和變量都是var類型 而在類里面要想改變實例的變量的值,只要變量的類型是var就可以,類的實例的類型可以是let,這是因為在引用類型中,let約束只是指向這塊空間的指針也就是名字,因此在let約束下的指針不可以再指向另一塊空間,也就是let型的類實例不可以賦值成另一個實例查看全部
-
引用類型的運行機制查看全部
舉報
0/150
提交
取消