Swift學習筆記(二十六) 擴充套件

2021-07-04 12:51:54 字數 691 閱讀 8172

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)型別計算屬性;

使用擴充套件可以新增例項方法或者型別方法。

學習二十六 雙快取技術

在 react 中,dom 的更新採用可雙快取技術,雙快取技術致力於快速的 dom 更新。什麼是雙快取?舉個例子,使用 canvas 繪製動畫時,在繪製每一幀前都會清除上一幀的畫面,清除上一幀需要花費時間,如果當前幀畫面計算量又比較大,又需要花費比較長的時間,這就導致上一幀清除到下一幀顯示中間會有較...

二十六 遮蔽中斷

1.6410和210採用向量中斷,由硬體執行。有兩組中斷源,相應的控制暫存器也有多個 2.6410和210使能和遮蔽是分開的暫存器 3.遮蔽控制暫存器的讀寫操作從而遮蔽中斷,都是寫入全1 4.6410的 遮蔽中斷,要操作兩個暫存器,目的是將使能中斷暫存器的相關位清除 define vic0inten...

二十六 裝飾器

裝飾器 由於函式也是乙個物件,而且函式物件可以被賦值給變數,所以,通過變數也能呼叫該函式。def now print 2015 3 25 f now f 2015 3 25 函式物件有乙個 name 屬性,可以拿到函式的名字 now.name now f.name now 現在,假設我們要增強 no...