Swift學習筆記-繼承

1.方法的重寫

需要在重寫的方法前加 override。

override func makeNoise() {
        print("這是子類")
    }
  • 在屬性someProperty的 getter 或 setter 的重寫實現(xiàn)中,可以通過super.someProperty來訪問超類版本的someProperty屬性。
  • 在下標的重寫實現(xiàn)中,可以通過super[someIndex]來訪問超類版本中的相同下標。

2.重寫屬性

///相當于get方法的省略寫法
override var description: String {
        return "zc"+super.description
    }

也可以寫為可讀可寫的:

override var description: String {
        get {
            return "zc"+super.description
        }
        set {
            currentSpeed = 20
        }
    }

3.重寫屬性觀察器

  • 不能為繼承來的常量存儲屬性或者只讀計算屬性添加屬性觀察器,因為這些屬性是可讀的。
  • 你不能同時重寫setter方法和屬性觀察,因為你可以直接在setter方法中觀察了。

4.防止重寫

  • 在方法前添加 final 可以防止方法被重寫
  • 在class前添加 final 可以防止類被繼承
    (例如:final var,final func,final class func,以及final subscript)。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 標簽(空格分隔): 未分類 基礎(chǔ)(相關(guān)概念) 1.元祖 元組(tuples)把多個值組合成一個復合值。元組內(nèi)的值可...
    一生信仰閱讀 706評論 0 0
  • 123.繼承 一個類可以從另外一個類繼承方法,屬性和其他特征。當一個類繼承另外一個類時, 繼承類叫子類, 被繼承的...
    無灃閱讀 1,492評論 2 4
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young閱讀 4,194評論 1 10
  • 基礎(chǔ)部分(The Basics) 當推斷浮點數(shù)的類型時,Swift 總是會選擇Double而不是Float。 結(jié)合...
    gamper閱讀 1,493評論 0 7
  • 類別:方法書名:《超級閱讀術(shù)》著者:[日]齋藤孝譯者:趙仲明出版:北京聯(lián)合出版公司字數(shù):188千字版次:2016年...
    張記賓閱讀 1,409評論 0 0

友情鏈接更多精彩內(nèi)容