SwiftUI Day10 類和繼承

2021-10-24 15:02:58 字數 1568 閱讀 2260

參考資料:

類與結構體有五個不同:

類沒有建構函式,所以要自己寫

類可繼承,結構體沒有

乙個類物件賦值給另乙個變數,則兩個變數都指向同一記憶體,而乙個結構體物件賦值給另乙個變數,則兩個變數是完全無關的物件

類有析構函式

類不需要mutating關鍵字

執行快捷鍵:shift+command+回車

刪除當前行:option+d

class

dog}

let poppy =

dog(name:

"poppy"

, breed:

"poodle"

)

class

dog}

class

poodle

:dog

}

class

dog}

class

poodle

:dog

}let poppy =

poodle()

poppy.

makenoise

()

final

class

dog}

結果乙個是taylor swift乙個是justin bieber

class

singer

var singer =

singer()

print

(singer.name)

var singercopy = singer

singercopy.name =

"justin bieber"

print

(singer.name)

改為結構體之後始終是taylor swift

struct

singer

var singer =

singer()

print

(singer.name)

var singercopy = singer

singercopy.name =

"justin bieber"

print

(singer.name)

class

person

func

printgreeting()

deinit

}for_in

1...

3

前面結構體中說如果要改結構體中變數的值需要用mutating關鍵字,而類中不需要用mutating關鍵字。

class

singer

let taylor =

singer()

taylor.name =

"ed sheeran"

print

(taylor.name)

class

singer

類模板的特化和函式模板的過載與類模板的繼承

類似於函式模板的特化,類模板的特化也是在類模板定義以後,用template來說明乙個模板的特化型別,特化的類模板甚至可以定義新的資料成員和成員函式,下面就是乙個類模板特化的例子 include template class a t compute template class a int compu...

C Prime Plus 第10章 物件和類

抽象 封裝 將實現細節放在一起並將它們與抽象分開被稱為封裝,種類 1 資料隱藏 2 將類函式定義和類宣告放在不同檔案中 和資料隱藏 將資料封裝到私有部分從而保護資料的完整性稱為資料隱藏 多型繼承 的可重用性 2.1 類的組成 類宣告 資料成員描述資料部分 成員函式 方法 描述公有介面,一般放於標頭檔...

開卷有益,重看jdk文件 關於類和介面中的繼承

類與類之間存在繼承關係的時候,要是子類和父類定義了乙個相同簽名的靜態方法時,兩個版本的方法被誰呼叫取決於實際呼叫它的類,即子類對父類方法隱藏了。另外,如果子類和父類定義了乙個相同簽名的例項方法時,用過父類引用指向子類例項的方式呼叫該方法的時候,實際呼叫的是子類方法,即父類方法被重寫。父類 publi...