OC語言中類目,延展,協議

一.類目spa

指向已知的類中添加新方法,不破壞封裝性。已知類能夠是自定義的類和系統的類。3d

1.類目的實現和聲明blog

建一個學生類,並增長類目io

(1).聲明(是在Student+Working.h中)變量

必須引入原類,這裏是Studnet類方法

(2)  .實現(是在Student+Working.m中)im

注意引入d3

2.類目的使用協議

  i.不能再類目中添加實例變量db

  j.能夠爲一個類添加多個類目,但類目名和方法名不能重複

  k.不能隨意重寫類目的方法

3.類目的侷限性

  i.若是在類目中重寫父類的方法可能致使super消息的斷裂,由於在類目中的方法優先級高於父類。

  j.沒法在在類目中添加實例變量。

二.延展

經過在本身的類的實現文件中添加添加類目來聲明私有方法,延展至關於一個匿名的類目。

1.聲明

在studnet.m文件中,在@implementation之上,方法是不須要實現的

延展不提供名稱表示必須實現,提供名稱能夠不實現。

2.實現

 

在studnet.m文件中,在@implementation和@end中實現方法。

以上在main.m中調用並打印的結果以下:

三.協議

聲明一些方法,讓別的類來實現,也能夠爲類增長方法

1.聲明一個協議

文件中

 

2.在導入協議的頭文件

 

 

3.在文件中採用協議

 

 

4.並在文件中實現協議中的方法

相關文章
相關標籤/搜索