Swift學習筆記系列 (8)類和結構體

2021-07-03 20:21:06 字數 617 閱讀 7154

tags: swift 學習筆記

為什麼把類和結構體一起講?

因為除了類的複雜應用部分,二者很相似。

定義屬性來儲存資料;

定義方法來實現功能;

定義下標提供訪問值

定義構造方法設定初始值

預設實現之外,可以擴充套件功能

遵循協議(protocol)來提提供標準功能

乙個類繼承另乙個類的特徵;

類例項可以在執行時進行型別檢查和判斷;

類例項可以通過析構函式釋放它分配到的資源;

引用計數允對於乙個類的例項有多於乙個引用。

恒等運算子比較類的引用

預設的全體成員初始化函式

選擇則結構體的原因

結構的主要目標是封裝一系列有關聯的簡單資料值;

賦值或傳引數的時候期望傳值而不是傳引用;

屬性也是值型別的;

不想從已有的型別中繼承屬性或者行為。

Swift 學習筆記 類

存在迴圈引用的問題 class bankcard class user解決迴圈引用 在例項的生命週期中,如果某些時候引用沒有值,那麼弱引用可以避免迴圈強引用。如果引用總是有值,則可以使用無主引用。1.弱引用,使用 weak 修飾 注意弱引用必須被宣告為變數,表明其值能在執行時被修改。弱引用不能被宣告...

Swift學習筆記 七 類和結構體

類和結構體的比較 1 相同點 定義屬性用於儲存值 定義方法用於提供功能 定義下標用於通過下標語法訪問值 定義構造器用於生成初始化值 通過擴充套件以增加預設實現的功能 符合協議以對某類提供標準功能 2 與結構體相比,類還有如下的附加功能 繼承允許乙個類繼承另乙個類的特徵 型別轉換允許在執行時檢查和解釋...

swift學習筆記 4 結構體和類

類和結構體 相同點 1.類和結構體都可以定義屬性和方法 這是和c oc中的結構體的最大區別 2.類和結構體中都能定義構造器方法 不同點 1.類可以在析構體deinit中釋放資源,結構體不可以 2.類可以繼承.結構體是不能被繼承 3.類是乙個引用型別,乙個例項可以有多個引用,操作的是例項的本身 結構體...