objective-c學習筆記

來源:互聯網
上載者:User

標籤:

Objective-c學習筆記

1.使用#import匯入標頭檔,一般osx命令列開發使用<Foundation/Foundation.h>,圖形介面開發使用<Cocoa/Cocoa.h>

2.OC中字串不再是數組,而是變成了NSString類型的對象,凡是涉及到字串的都是對象,另外,當靜態字串賦值的時候,應該要使用@做標識,例如@“helloworld”

3.OC中的真假為BOOL類型,同時真為YES假為NO,佔八位,系統依靠最低位來確定,最低位為0為NO,最低位不為零,為YES,所以,比較BOOL的時候,應該和NO比較

4./tmp為系統緩衝目錄,系統重啟的時候被清空

5.id類型是oc的通用指標,該類型可以指向任何對象,但是最好不要濫用 

6.oc的介面定義模式如下

@interface

{

@屬性的存取權限

屬性值

}

-(方法的傳回型別)方法名:(參數1的類型)參數名,(參數二的類型)參數名;

@end

7.oc的介面實現如下

@implemention

-(方法的傳回型別)方法名:(參數1的類型)參數名,(參數二的類型)參數名

{

函數實現/方法實現

}

@end

8.OC調用方法使用中括弧,例如 [執行個體指標  方法名:參數1,參數2]

9.在類的實現中,可以直接存取類的執行個體變數,這是因為直接存取的時候OC編譯器隱藏傳遞了一個參數self

10.最簡單的產生新執行個體的方式為[類名 new](後面不推薦使用)

11,OC本身不支援多繼承,但是可以用委託機制來實現多繼承

12.在子類中想要調用父類的方法可以使用super關鍵字,例如 [super init]

13.定義介面的時候可以指明繼承的父類,例子如下

@interface 介面名:父類名

@end

14.使用NSLog可以輸出,類似於printf

15.NSLog可以列印對象,適應%@參數即可,這樣系統會自動調用該對象的description方法

16.屬性的存取方法,存方法使用set+屬性名稱 取方法直接使用屬性名稱,假設屬性為xxx,則為

-(void)setxxx:(id)xxx -(id)xxx;

17.oc使用.m格式的源檔案和.h格式的標頭檔,通常申明放在.h檔案,實現放在.m檔案

[email protected] 類名 該關鍵字一般表示匯入類,在.h檔案中使用的比較多,不想包含標頭檔的時   候使用該關鍵字

19.範圍結構體 NSRange ,表示數位起點和大小,參數均為無符號整形,賦值有函數NSMakeRange()函數

20.座標結構體CGPoint,參數均為浮點型,表示座標,CGPointMake快速賦值

     圖形結構體CGSize 參數為浮點型,CGSizeMake快速賦值

     矩形結構體CGRect 含有兩個結構體類型的參數,快速賦值為CGRectMake

21.字串類NSString的方法

stringWithFormat 建立新字串

length 擷取字串個數

isEqualToString 字串比較

compare 字串比較

NSCompareResult 比較結構枚舉,取值包括NSOrderAscending 等三個

hasPrefix 檢測字串是否以指定字串開頭

hasSuffix 檢測字串是否以指定字串結尾

rangeOfString 檢測字串中是否還有指定字串 沒有返回的NSRange中location為NSNotFound

 

22.NSString是運行時不可變的,如果需要運行時可變的字串需要NSMuteableString

stringWithCapacity 指定初始化容量

appendString 附加子串

appendFormat  附加格式化字串

deleteCharactersInRange 刪除字串中指定位置的字元

因為NSMuteableString是NSString的子類,所以NSString的函數NSMuteableString 都能用

 

22.NSArray

NSArray中可以放入任意類型的對象,但是不能存放原生資料類型

arrayWithObjects 初始化,指定未經處理資料列表

count 獲得元素個數

objectAtIndex 擷取特定位置的元素

componentsJoinedByString 使用特定字串連結所有元素成為一個新的字串返回

 

22,可變數組NSMutableArray

arrayWithCapacity 指定初始化容量

addObject 在末尾添加對象

removeObjectAtIndex 移除指定位置的元素

objectEnumerator 擷取數組對象的列舉程式

 

23.枚舉,使用列舉程式

while(id thing = [enum nextobject])

{

//dosomething

}

24.快速枚舉

10.5之後的新特性,while(NSString* str in array){//dosomething}

 

25.NSDictionary字典

dictionaryWithObjectsAndKeys 建立索引值對,初始化對象

objectForKey 通過鍵擷取對象

 

26.可變字典NSMutableDictionary

dictionaryWithCapacity 初始化可變字典,指定容量

setObject  forkey 添加索引值對

removeObjectForKey 刪除索引值對

 

27.對於NSString和NSArray,不要繼承,最好使用複合

 

28.NSNumber數值類

用於將原生資料類型裝箱

numberWithChar  numberWithInt numberWithFloat numberWithBool 裝箱

charValue intValue floatValue boolValue stringValue 拆箱

 

29.NSNumber其實是NSValue的子類,NSValue可以封裝任何值,

valueWithBytes 指定資料長度和資料類型就能裝箱

getValue 用於提取數值

 

30.NSNull

nil的裝箱資料結構,只有一個方法null

31.oc的方法分為兩種,分別是執行個體方法和類方法,使用-定義的是執行個體方法 使用+定義的方法是類方法,類方法在沒有執行個體的時候可以直接通過類名調用,如init方法,如下

類方法 +void init:(int)a,(int)b;

執行個體方法 -void init:(int)a,(int)b;

 

objective-c學習筆記

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.