-
當一個類既要繼承父類,又要遵守協議時,父類要在最前面(一個類只能繼承一個父類)查看全部
-
1.protocal 相當于“接口”,定義一組規范,再由具體的類、結構體、枚舉型變量實現 2.協議的方法中沒有具體實現,不能有默認參數,默認參數相當于一種實現 3.協議的屬性的讀取類型為{get set}可讀寫或{get}只讀,協議屬性定義必須為var 4.協議不是類型,不能像類一樣初始化,而要創建一個類型來遵守協議 5.Swift中冒號:表示“是一個” 6.協議定義作為一個pet,應有什么屬性和方法 7.遵守協議:只要把協議規定的部分實現,其余的可任意創建添加。 8.協議本身可以當作一個類型,和遵守協議而實現的類型是有區別的。 apet 和 myDog 指向同一片內存,只是聲明的類型不同查看全部
-
泛型類型<>:在定義類型時使用泛型查看全部
-
泛型:有些情況下需要對多個數據類型進行相同的操作,可以用一個泛型來代替多個不同類型參數或者返回值的重復的方程,通過定義泛型,可以交換任意兩個數據類 自帶函數swap就是用泛型寫的查看全部
-
擴展系統類庫 swift 3中,改寫作: stride(from:2,to:num ,by:2) ->2,4,6 開區間 stride(from:2,through:num ,by:2) ->2,4,6,8 閉區間 循環變量本身有意義 task用法作用?查看全部
-
只能擴展引用型,擴展值類型需加mutating 只能擴展計算型屬性,不能擴展存儲型屬性,存儲型屬性可在計算性屬性中被修改 只能擴展便利構造函數,必須使用self.init來引用指定構造函數,而指定構造函數不能寫在擴展中,只能放在類本身的定義中。查看全部
-
自定義雙目運算符 associativity left 結合性 precedence 140 優先級 默認140(范圍:0~255),加是140,乘是150查看全部
-
自定義單目運算符查看全部
-
運算符重載:運算符本身就是一個函數,賦值語句不允許被重載。 線代:兩個向量相乘產生內積。 inout型參數:最終結果可以在函數外面體現。 prefix 作為前綴,如減號當負號用時,使單目運算符放在左邊查看全部
-
!34~42 改寫查看全部
-
斷言assert 錯誤處理 注意下標用法為a[ , ],而a [ ][ ]為二維數組查看全部
-
subscript:自定義下標,可有多個,可用getter、setter方法查看全部
-
兩天看全部四季查看全部
-
is關鍵字查看全部
-
檢查協議遵守查看全部
舉報
0/150
提交
取消