OC學習總結(一)

2021-06-28 18:03:55 字數 2487 閱讀 4228

oc學習總結(一)

知識要點

1、 類(inte***ce)

》頭檔案格式.h

@inte***ce class-name : super-class-name

@property ... //點語法中可以方便使用

以後property關鍵字實現了三部分工作:成員變數的定義如_name(預設為private),property和synthesize的功能

//構造方法的命名約定(以person類為例):類方法personwith開頭,例項方法initwith開頭

//+開頭的類方法

//-開頭的例項方法

@end

》實現檔案.m(.mm)

@implementation class-name

@synthesize ... //點語法中可以方便使用

//實現方法

...@end

2、 分類(category)

》頭檔案格式.h

@inte***ce class-name (category-name)

//+開頭的類方法

//-開頭的例項方法

@end

》實現檔案.m(.mm)

@implementation class-name (category-name)

//實現方法

...@end

3、 協議(protocol)

》頭檔案格式.h

@protocol protocol-name

//協議方法

...@end

4、 擴充套件(extension)

》宣告和實現都在.m檔案中

》格式類似於無名category

@inte***ce class-name ()

@end

》實現在原有類的implementation中

》相當於私有方法,類內部才可用

5、 委託(delegate)

》協議的一大特色,**模式

》協議findhouse的定義

@protocol findhouse

- (void) findhouse;

@end

》**中介agent

@inte***ce agent : nsobject - (void) findhouse;

@end

》甲方person

@inte***ce person : nsobject

+ (id) personwithdelegate:(id)pdelegate; //注入**

- (void) starttofindhouse;

@end

6、 foundation框架

》nsnumber(涉及到基本資料型別和物件的相互轉化,包裝和拆包)

包裝[number numberwithint:age]

拆包[number intvalue]

》nsstring(字串的初始化、拼接、查詢和比較)

字面量語法 nsstring *str = @"hello oc"

長度[str length]

子串substringfrom, substringto, substringwithrange

比較isequaltostring, compare, caseinsensitivecompare

拆分字串 componentsseparatedbystring

陣列拼接字串componentsjoinedbystring

字串拼接stringwithformat

查詢字串hasprefix, hassuffix, containsstring, rangeofstring

》nsarray(陣列中只能存放物件,包括可變nsmutablearray和不可變陣列)

建立arraywithobjects, arraywitharray

長度[arr count]

查詢indexofobject

可變陣列addobject

》nsset(無序列表,只能存放物件,分類可變nsmutableset和不可變集合,自動去除重複物件)

建立setwithobjects

增加setbyaddingobject(返回新物件)

可變集合nsmutableset

子集判斷intersectsset

交集intersectset

差集minusset

》nsdictionary(字典為鍵值對,鍵值都必須是物件,而且都不能為nil,如果值為空時可採用nsnull)

建立dictionarywithobjectsandkeys

取值objectforkey

可變字典 setvalue: forkey

刪除removeobjectforkey

OC學習總結

經過小半個月的學習oc學習結束了,或多或少的有些收穫與不足.1首先學習物件導向與面向過程的區別 開發中 先定義類,再建立物件,然後使用物件 定義類包含了兩個部分 介面部分和實現部分 1 介面部分 對外宣告類的特徵和行為 標誌 inte ce 2 實現部分 對內實現行為.標誌 implementati...

OC學習總結之block category

例子 用乙個block輸出n條橫線 void lineblock int int n lineblock 5 int sumblock int,int void myblock inta,intb typedef int myblock int,int 以後就可以利用myblock這種型別來定義bl...

OC學習心得(一)

一 objective c 的介紹 objective c是 c語言的乙個擴充套件集。objective c是c 以c語言為基礎,可以實現面向程式設計,並提供了針對 ios開發的大量類庫。一般使用蘋果公司的xode 工具來編寫程式。xcode的.m 副檔名表示檔案含有 objective c 應由 ...