Swift學習筆記(二十六)——擴充套件
1.擴充套件的作用:
(1)使用擴充套件新增屬性;
(2)使用擴充套件新增方法,可變方法;
(3)使用擴充套件新增構造器;
(4)使用擴充套件新增下標;
(5)使用擴充套件新增巢狀型別;
2.擴充套件的特性:
(1)使用擴充套件新增屬性,方法,可變方法,構造器,下標,巢狀型別;
(2)可以使一個已有型別符合一個或者多個協議;
(3)Swift的擴充套件與OC的類目(category) 類似,只是Swift中的擴充套件沒有名字;
(4)擴充套件並不是派生子類,因此不支援重寫;
3.擴充套件的語法定義:
[修飾符] extension 已有型別{
//新增新功能
}
修飾符可以省略,或者是private ,internal,public 其中之一,型別可以是列舉,結構體和類其中之一。
注意:通過擴充套件為已有型別新增了新功能,那這個新功能在該型別的所有已有例項中都是可用的。
通過擴充套件讓已有的型別遵守一個或者多個協議,這種情況下的語法格式:
[修飾符] extension 已有型別:協議1,協議2{
//新增新功能;
}
4.使用擴充套件新增屬性,方法
使用擴充套件可以新增3種屬性:
(1)型別儲存屬性;
(2)例項計算屬性;
(3)型別計算屬性;
使用擴充套件可以新增例項方法或者型別方法。
github主頁:https://github.com/chenyufeng1991 。歡迎大家訪問!
相關文章
- C#學習筆記(補充)——擴充套件方法、事件C#筆記套件事件
- swift擴充套件ExtensionsSwift套件
- C#學習筆記-方法引數、擴充套件方法C#筆記套件
- 擴充套件中國剩餘定理(EXCRT)學習筆記套件筆記
- ES6學習筆記4--字串的擴充套件筆記字串套件
- Swift 擴充套件 Storyboard 屬性Swift套件
- System Design 關係型資料庫的擴充套件 - 學習筆記資料庫套件筆記
- 數論學習筆記 (4):擴充套件歐幾里得演算法筆記套件演算法
- sql中的擴充套件學習SQL套件
- Swift在擴充套件中關聯物件Swift套件物件
- 擴充套件包 Laravel-compass 使用筆記套件Laravel筆記
- swift學習筆記《1》Swift筆記
- swift學習筆記《4》Swift筆記
- ES6語法學習筆記之陣列與擴充套件運算子筆記陣列套件
- web前端雜記:深入瞭解原理,擴充套件學習Web前端套件
- swift學習筆記《2》-swift語法Swift筆記
- Minecraft中BossBar、Recipe的底層實現與擴充套件應用(學習筆記)Raft套件筆記
- swift學習筆記《3》-技巧Swift筆記
- Swift進階學習筆記Swift筆記
- Laravel深入學習7 – 框架的擴充套件Laravel框架套件
- [譯]Swift 3 中實現Dispatch once擴充套件Swift套件
- kotlin 擴充套件(擴充套件函式和擴充套件屬性)Kotlin套件函式
- pcntl擴充套件學習筆記一(pcntl_fork與pcntl_wait,序列執行分析)套件筆記AI
- 技術筆記(10)Unity編輯器擴充套件筆記Unity套件
- [外掛擴充套件]馬克筆記MarkDoc0.1套件筆記
- swift學習筆記《5》- 實用Swift筆記
- 從EventBus學習擴充套件Weex事件機制套件事件
- es6陣列擴充套件的學習陣列套件
- Scikit-learn可擴充套件學習簡介套件
- 學習PHP中YAML操作擴充套件的使用PHPYAML套件
- PHP的Mhash擴充套件函式的學習PHP套件函式
- php 擴充套件安裝(隨筆)PHP套件
- Swift 核心動畫 面向協議 擴充套件封裝Swift動畫協議套件封裝
- js筆記三十四之原型鏈模式擴充套件(1)JS筆記原型模式套件
- js筆記三十五之原型鏈模式擴充套件(2)JS筆記原型模式套件
- 再學Blazor——擴充套件方法Blazor套件
- 【Kotlin】擴充套件屬性、擴充套件函式Kotlin套件函式
- PHP中非常好玩的Calendar擴充套件學習PHP套件
- Kotlin學習快速入門(7)——擴充套件的妙用Kotlin套件