《突破,Objective-C開發速學手冊》是2013年電子工業出版社出版的圖書,作者是傅志輝。
基本介紹
- 中文名:突破,Objective-C開發速學手冊
- 作者:傅志輝
- 語言:簡體中文
- 出版時間:2013年
- 出版社:電子工業出版社
- 頁數:378 頁
- ISBN:9787121207426
- 開本:16 開
- 裝幀:平裝
編輯推薦,目錄,
編輯推薦
本書作者結合自己多年的Objective-C開發經驗和心得體會,花費了一年多的時間精心寫作本書。希望各位讀者能在本書的引領下跨入Objective-C世界的大門,並成為一名開發高手。本書最大的特色就是結合大量的說明插圖,全面、形象、系統、深入地介紹了Objective-C開發程式,並以大量實例貫穿於全書的講解之中,最後還詳細介紹了iPhone的開發過程。學習完本書後,讀者應該可以具備獨立進行項目開發的能力。
目錄
第一篇基礎篇
第1章第一個Objective—C程式2
1.1Objective—C開發概述2
1.1.1Objective—C的發展史2
1.1.2Objective—C的特點3
1.2構建開發環境4
1.2.1Objective—C開發環境的安裝條件4
1.2.2VirtualBox下載和安裝5
1.2.3虛擬機的建立7
1.2.4設定虛擬機10
1.2.5安裝系統11
1.2.6進入界面11
1.2.7下載和安裝Xcode16
1.3“HelloWorld!”程式20
1.3.1創建HelloObjective—C項目20
1.3.2編譯、連線及運行22
1.4Objective—C代碼認識24
1.4.1查看源檔案24
1.4.2Objective—C程式的結構25
1.4.3注釋25
1.4.4標識符26
1.5小結28
1.6習題28
第2章數據類型30
2.1數30
2.1.1二進制數30
2.1.2十進制數31
2.1.3八進制數32
2.1.4十六進制數33
2.1.5各進制之間的轉換34
2.2數據類型34
2.2.1整數類型34
2.2.2實型數據36
2.2.3字元型37
2.2.4數據類型的輸出40
2.2.5Objective—C特有的數據類型40
2.3變數和常量40
2.3.1變數41
2.3.2常量43
2.4小結45
2.5習題45
第3章語句48
3.1語句的構成48
3.2運算符及表達式49
3.2.1算術運算符及表達式49
3.2.2自增自減運算符51
3.2.3位運算符52
3.2.4賦值運算符及表達式55
3.2.5關係運算符及表達式59
3.2.6條件運算符60
3.2.7布爾邏輯運算符及表達式62
3.2.8逗號運算符及表達式64
3.2.9求位元組數運算符65
3.2.10特殊的運算符66
3.2.11運算符的優先權67
3.3類型轉換69
3.3.1自動轉換69
3.3.2強制類型轉換71
3.4語句塊72
3.4.1語句塊的結構72
3.4.2作用域73
3.5小結74
3.6習題74
第4章程式控制結構77
4.1順序結構77
4.2選擇結構78
4.2.1條件語句的組成78
4.2.2if語句79
4.2.3if...else語句80
4.2.4if...else...if語句82
4.2.5三種if語句的注意事項84
4.2.6if語句的嵌套86
4.2.7switch語句87
4.3循環結構90
4.3.1while語句91
4.3.2for語句92
4.3.3do...while語句97
4.3.4三種循環語句的比較98
4.4轉折語句99
4.4.1break語句99
4.4.2continue101
4.4.3break和continue的比較101
4.4.4return語句102
4.5小結102
4.6習題103
第5章函式105
5.1函式簡介105
5.2函式的使用107
5.2.1函式的聲明107
5.2.2函式的定義和調用107
5.2.3函式使用中的問題109
5.2.4空函式110
5.3函式的參數111
5.3.1參數111
5.3.2有參函式的定義和調用112
5.3.3參數的注意事項113
5.3.4函式的傳遞方式114
5.4函式的返回值115
5.4.1返回某一數據類型的值115
5.4.2無返回值117
5.5函式的嵌套和遞歸117
5.5.1函式的嵌套117
5.5.2函式的遞歸119
5.6小結120
5.7習題120
第二篇面向對象篇
第6章面向對象編程124
6.1類和對象124
6.1.1類的聲明和定義124
6.1.2實例化對象126
6.2實例變數130
6.2.1實例變數的定義130
6.2.2實例變數的使用130
6.2.3實例變數、全局變數和局部變數的區別131
6.2.4變數的存儲類別132
6.3方法135
6.3.1方法的聲明135
6.3.2方法的實現136
6.3.3對象方法的使用136
6.3.4類方法的使用138
6.3.5方法的參數139
6.4屬性142
6.4.1屬性的聲明和定義142
6.4.2帶參屬性144
6.4.3帶參屬性——setter/getter方法(assign/retain/copy)144
6.4.4帶參屬性——讀寫屬性148
6.4.5帶參屬性——原子修飾149
6.5小結150
6.6習題150
第7章深入面向對象的編程154
7.1繼承154
7.1.1繼承的實現154
7.1.2實例變數的繼承155
7.1.3方法的繼承158
7.2訪問限定符159
7.2.1@public159
7.2.2@protected161
7.2.3@private161
7.2.4訪問限定符的區別162
7.3方法重寫163
7.3.1方法重寫的形式163
7.3.2super164
7.4方法重載165
7.5多層繼承166
7.6多態169
7.6.1多態的形式169
7.6.2方法的重寫實現多態170
7.6.3方法的重載實現多態171
7.7動態類型和動態綁定172
7.7.1動態類型id172
7.7.2動態綁定173
7.8小結174
7.9習題174
第8章分類和協定180
8.1分類180
8.1.1分類的聲明180
8.1.2分類的定義180
8.1.3分類的使用181
8.1.4分類的創建181
8.1.5分類使用的注意點183
8.2協定185
8.2.1協定的定義185
8.2.2協定的創建186
8.2.3協定在類中的聲明187
8.2.4所用協定聲明方法187
8.2.5關鍵字188
8.2.6多個協定的使用192
8.2.7在協定中使用協定193
8.2.8判斷協定實現的方法194
8.2.9協定的分類195
8.3小結196
8.4習題196
第三篇技術篇
第9章記憶體管理200
9.1記憶體管理的基礎200
9.1.1申請記憶體(alloc)200
9.1.2釋放記憶體(dealloc)201
9.2引用計數204
9.2.1引用計數和字元串205
9.2.2引用計數和實例變數206
9.3自動釋放池207
9.3.1自動釋放池207
9.3.2建立多個自動釋放池209
9.3.3引用計數和自動釋放池210
9.4記憶體管理規則及記憶體泄漏211
9.4.1記憶體管理規則211
9.4.2記憶體泄漏213
9.5垃圾回收213
9.6小結214
9.7習題214
第10章Foundation框架的基本對象217
10.1數字對象217
10.1.1數字對象的介紹217
10.1.2數字對象的使用218
10.2字元串對象224
10.2.1字元串和字元的區別224
10.2.2不可修改的字元串225
10.2.3可修改的字元串232
10.3數組對象235
10.3.1數組的定義235
10.3.2數組的聲明235
10.3.3數組的引用237
10.3.4二維數組的聲明和定義238
10.3.5二維數組初始化的方法239
10.3.6二維數組的引用240
10.3.7字元數組的含義241
10.3.8字元數組初始化241
10.3.9字元數組的引用241
10.3.10不可修改的數組242
10.3.11可修改的數組246
10.4字典對象251
10.4.1不可修改的字典251
10.4.2.可修改的字典253
10.5集合對象256
10.5.1不可修改的集合257
10.5.2可修改的集合259
10.6小結263
10.7習題263
第11章檔案和目錄處理267
11.1檔案的操作267
11.1.1創建檔案267
11.1.2檔案的使用268
11.1.3對檔案數據的操作274
11.1.4檔案的讀寫278
11.2目錄的操作286
11.2.1目錄的基本操作方法286
11.2.2目錄的顯示289
11.2.3臨時目錄292
11.2.4路徑293
11.3小結294
11.4習題294
第12章編譯預處理296
12.1宏定義296
12.1.1不帶參宏定義296
12.1.2帶參宏297
12.1.3使用宏的注意點298
12.1.4宏的取消299
12.2檔案包含301
12.3條件編譯304
12.3.1#ifdef304
12.3.2#ifndef305
12.3.3#if307
12.3.4編譯預處理總結307
12.4小結308
12.5習題308
第13章進程和執行緒312
13.1進程312
13.1.1創建進程312
13.1.2進程的使用313
13.1.3進程方法總結315
13.2執行緒315
13.2.1使用NSThread創建執行緒316
13.2.2啟動執行緒316
13.2.3訪問主執行緒318
13.3互斥鎖318
13.3.1NSLock319
13.3.2@synchronized320
13.4進程和執行緒的區別321
13.5小結322
13.6習題322
第14章歸檔324
14.1XML屬性列表324
14.1.1使用XML進行數據保存324
14.1.2使用XML進行數據讀取326
14.2NSKeyedArchiver329
14.2.1NSKeyedArchive的數據保存330
14.2.2NSKeyedArchive的數據讀取331
14.3編碼和解碼方法331
14.3.1直接進行歸檔332
14.3.2編碼方法333
14.3.3解碼方法333
14.4保存多個對象到一個檔案335
14.5使用歸檔程式複製對象337
14.6小結337
14.7習題338
第15章錯誤處理341
15.1錯誤的分類341
15.2使用返回值342
15.3使用異常處理342
15.3.1異常處理的使用343
15.3.2捕獲不同類型的異常345
15.3.3使用異常的注意點346
15.3.4拋出異常348
15.4使用NSError349
15.5小結350
15.6習題351
第16章時間日期處理352
16.1NSDate352
16.1.1創建NSDate352
16.1.2獲取當前的日期353
16.1.3獲取昨天的日期353
16.1.4日期的比較355
16.1.5兩個日期的時間差358
16.1.6時間間隔358
16.2使用NSCalendar359
16.2.1創建一個給定日期的NSDate對象359
16.2.2日期在不同日曆間的轉換361
16.2.3獲取日期總的年月日361
16.3字元串和日期的相互轉化362
16.3.1將日期轉化為字元串362
16.3.2將字元串轉化為日期363
16.4時區365
16.5小結366
16.6習題366
第四篇iPhone開發入門篇
第17章iPhone入門370
17.1iPhone簡介370
17.1.1iPhone的發展370
17.1.2編寫iPhone應用程式和其他程式的不同371
17.2第一個“HelloWorld!”程式371
17.2.1創建HelloWorld項目371
17.2.2iPhoneSimulator的簡介371
17.2.3使用InterfaceBuilder373
17.2.4編寫第一個“HelloWorld!”程式376
17.3小結377