swift學習筆記之繼承

2021-07-12 04:52:31 字數 2560 閱讀 6088

//繼承1防止**冗餘2擴充套件功能

//1繼承的定義

//2繼承屬性

//3子類不僅可以繼承父類的屬性,還可以繼承在屬性中的新增的屬性監視器

class

stepcounter

didset(old) }}

}class

stepcounter:stepcounter

let counter=stepcounter()

counter.totalsteps=10

counter.totalsteps=100

//4下標指令碼的繼承

class

sorce }}

}class

childsorce: sorce

let myscore=childsorce()

print(myscore[0])

print(myscore[1])

//5方法的繼承

//6繼承的特點 在swift 中1>只支援單繼承, 但乙個父類可以多個子類,成樹型結構2>不可以刪除父類的屬性

//7重寫

//class

newclass

class

varclassvalue:int

}class

newclass1: newclass

override

class

varclassvalue:int

}let cls = newclass1()

print(cls.value)

print(newclass1.classvalue)

// ~~~~3新增屬性監視器

class

car

class

automiccar: car

}}let automic = automiccar()

automic.speed=34.00

automic.speed=6886.00

// ~~~~~4重寫下標指令碼

class

childsorce111: sorce

}//~~~~~5重寫方法

//重寫的注意事項

//@1不可以省略override

//@方法相同才能重寫 ,父類沒有的,怎麼重寫

//8訪問父類的成員

// 1>訪問屬性 super.屬性名

// 2>訪問下標指令碼 suer[index]

// 3>訪問方法 super.方法名(引數名)

// 4>訪問型別屬性

//9防止重寫

// 將所有的屬性,下標指令碼,方法,型別屬性 前面加乙個 final (最終) 就可以達到防止子類重寫了

//10型別檢查

//型別檢查是一種檢查類例項的方式

// 1> 型別檢查 is

// 用法 例項 is 子型別

// @1,不能總是true

// @2 例項是特定的子型別

class

classa

class

classa1:classa

class

classa2:classa

class

classa3:classa

class

classa4:classa

class

classb:classa

class

classc

let b = classb()

if b is classb

else

let a = classa()

if a is classc

else

// 2 as

//開發者希望程式在執行期間進行型別轉換 ,這時就需要強制轉化as 或者可選的型別檢查符 as?

// 例項 as 型別

// >1強制型別的轉換

let bb=classb()

let clsbb = bb as classb

print("clsbb.movie==\(clsbb.movie)")

//注意 @1相同型別的例項:在乙個要檢查型別的陣列只可以存相同的型別

////let library = [classb(),classb(),classb(),classc()]

////for item in library

// @2不可以在條件語句使用

// >2可選型別的轉換 as?

// 當不確定轉換是否可以成功的時候,可以使用as?

//anyobject 和any的檢查

//對於一些型別不明確的型別,swift 提供了兩種型別別名來檢查,分別是anyobject 和any

//any比anyobject範圍更廣,除了方法型別

let library1 = [classa1(),classa2(),classa3(),classa4()]

for item in library1

for item:anyobject in library1

Swift 學習筆記 繼承

重寫hash方法 class ios nsobject override func viewdidload class human var human human aaa 30 struct size var size size width 20,height 20 enum color init ...

Swift學習筆記之函式

func testfunc 關於 swift 中的函式 1 函式定義,單個引數,返回值 func sayhi name string string 2 傳入多個引數,返回值 func sayhi2 name string age int string 3 無引數,無返回值 func sayhi3 4...

swift學習筆記之列舉

列舉型別 成員 計算屬性,型別屬性 下標指令碼 方法 enum 的關鍵字不能省略 1 定義任意型別的列舉成員 enum anyenum north 可以賦值任意型別 2 指定型別的列舉成員 enum derication north 只能字串 3.可以初始化列舉成員的值,但是原始值必須是唯一的,不能...