C#從入門到實踐

C#從入門到實踐

《C#從入門到實踐》是2009年清華大學出版社出版的圖書。

基本介紹

  • 書名:C#從入門到實踐
  • 作者鄭耀東
  • ISBN:9787302197485
  • 頁數:435
  • 定價:59.80
  • 出版社清華大學出版社
  • 出版時間:2009年09月
  • 裝幀:平裝
  • 開本:16
內容簡介,目錄,

內容簡介

本書從易到難、由淺入深、循序漸進、系統地介紹了C# 3.0開發技術。全書通俗易懂,大量的示例和實例供讀者更加深刻鞏固所學習的知識,使請棄讀者更好地進行開發實踐。
本書共分為27章,從第一個C#應用程式開始,首先介紹搭建、配置開發環境等基礎知識,然後介紹C# 3.0的基礎語法知識,如類型、變數、表達式、語句、命名空間等。再重點介紹C# 3.0中的面向對象編程技術和常用的擴展技術,如類、結構、數組、接口、委託、事件、異常處理、泛型、分部類型、可空類型、隱型變數、對象和奔定墓集合初始化器、疊代器、匿名類型、擴展方法、Lambda表達式、LINQ等。最後以常用實例和技術:字元串處理、時間處理、檔案操作、Windows窗體編程、GDI+和NET數據訪問,以及3個大型實例:圖書管理系統、P2P聊天工具和我的校區域網路結束全和蒸淚書。
本書適合廣大C# 3.0開發人員、網站管理維護人員和大專院校學生閱讀,尤其是適合C# 3.0入門人員。

目錄

第1篇C#概述篇
第1章C#入門基礎 2
1.1C#概述 2
1.1.1C#語言 2
1.1.2.NET框架 3
1.1.3C#應用程式 5
1.2搭建VisualStudio2008開發環境 6
1.2.1安裝MicrosoftVisualStudio2008 6
1.2.2配置集成開發環境(IDE) 7
1.2.3熟悉集成開發環境 9
1.3創建第一個控制台應用程式 11
1.3.1創建Sample_01_CA控制台應用程式 11
1.3.2解決方案資源管理器 12
1.3.3Program.cs檔案 12
1.3.4AssemblyInfo.cs檔案 13
1.3.5運刪訂促行應用程式 13
1.4創建第一個Windows窗體應用程式 14
1.4.1創建Sample_01_WFAWindows窗體應用程式 14
1.4.2解決方案資源管理器 15
1.4.3Form1.cs窗體 15
1.4.4Form1.Designer.cs檔案 15
1.4.5Form1.cs窗體的代碼 16
1.4.6Program.cs檔案 16
1.4.7AssemblyInfo.cs檔案 16
1.4.8運行應用程式 16
1.5上機實踐 16
1.6常見問題及解答 17
1.7小結 18
1.8習題 18
第2章C#基本概念 19
2.1創建HelloWorld應用程式 19
2.1.1創建hello.txt文本檔案 19
2.1.2創建HelloWorld類 19
2.1.3添加Main()方法 20
2.1.4調用WriteLine()方法 21
2.1.5引入System命名空間 22
2.1.6整理HelloWorld應用程式的代碼 22
2.2編譯和運行HelloWorld應用程式 23
2.3C#程式的概念擴展 24
2.4上機實踐 24
2.5小結 25
2.6習題 25
第2篇C#基礎語法篇
第3章類型 28
3.1類型概述 28
3.2值類型 29
3.2.1System.ValueType類型 29
3.2.2整數類型 30
3.2.3浮點型 31
3.2.4decimal類型 32
3.2.5bool類型 32
3.2.6枚舉類型 32
3.2.7結構類型 33
3.2.8實例1:把整數轉換為二進制數 34
3.2.9實例2:把二進制數轉換為整數 35
3.3引用類型 36
3.3.1對象蒸詢洪棄類型 36
3.3.2字元串仔故元類型 36
3.3.3類類型 37
3.3.4數組類型 37
3.3.5接口類型 37
3.3.6委託類型 38
3.4裝箱和拆箱 38
3.4.1裝箱 38
3.4.2拆箱 39
3.5上機實踐 39
3.6常見問題及解答 40
3.7小結 40
3.8習題 41
第4章變數 42
4.1變數概述 42
4.2變數分類 43
4.2.1靜態變數 43
4.2.2實例變數 44
4.2.3局部變數 45
4.2.4值參數 46
4.2.5引用參數 46
4.2.6輸出參數 47
4.2.7數組元素 48
4.3變數賦值 48
4.4實例1:使用值參數傳遞數據 49
4.5實例2:使用ref參數傳遞數據 50
4.6實例3:使用out參數返回數據 51
4.7變數轉換 52
4.7.1隱式轉換 52
4.7.2顯式轉換 53
4.8上機實踐 54
4.9常見問題及解答 54
4.10小結 55
4.11習題 55
第5章表達式和運算符 56
5.1表達式 56
5.1.1表達式分類 56
5.1.3base關鍵字 58
5.1.4new關鍵字 58
5.2運算腿設促嫌符 60
5.2.1運算符優先權 60
5.2.2一元運算符 61
5.2.6條件邏輯運算符 65
5.2.8關係和類型測試運算符 66
5.3實例1:使用checked和unchecked運算符檢查運算 67
5.4實例2:複數運算符重載 68
5.5上機實踐 70
5.6常見問題及解答 71
5.7小結 71
5.8習題 71
第6章語句 72
6.1語句概述 72
6.2基本語句 73
6.2.1空語句 73
6.2.2標記語句 73
6.2.3表達式語句 74
6.2.4聲明語句 74
6.2.5塊 75
6.3跳轉語句 75
6.3.1break語句 75
6.3.2continue語句 76
6.3.3return語句 76
6.3.4throw語句 77
6.4選擇語句 78
6.4.1if語句 78
6.4.2switch語句 79
6.5疊代語句 81
6.5.1for語句 81
6.5.2foreach語句 82
6.5.3while語句 83
6.5.4do語句 84
6.6其他語句 85
6.6.1try語句 85
6.6.2using語句 86
6.6.3lock語句 87
6.6.4checked和unchecked語句 88
6.7實例:判斷閏年 88
6.8上機實踐 89
6.9常見問題及解答 90
6.10小結 90
6.11習題 90
第7章命名空間 92
7.1命名空間概述 92
7.2聲明命名空間 92
7.3.(點號)運算符 94
7.4::(雙冒號)運算符 95
7.5using指令 95
7.5.1創建命名空間或類型別名 95
7.5.2導入命名空間 96
7.6.NETFramework常用命名空間 96
7.7上機實踐 97
7.8常見問題及解答 98
7.9小結 98
7.10習題 99
第3篇C#面向對象編程篇
第8章類 102
8.1類概述 102
8.1.1類聲明 102
8.1.2類修飾符 102
8.1.3類繼承 103
8.1.4類、對象和實例化 104
8.2類成員 104
8.2.1常量 105
8.2.2欄位 106
8.2.3方法 107
8.2.4屬性 111
8.2.5索引器 112
8.2.6構造函式 114
8.2.7析構函式 117
8.2.8事件 117
8.3實例:使用類的繼承特性 118
8.3.1設計Person類 119
8.3.2設計Teacher類 121
8.3.3設計Student類 122
8.3.4測試Person、Teacher和Student類 123
8.4上機實踐 124
8.5常見問題及解答 125
8.6小結 125
8.7習題 125
第9章結構 127
9.1結構概述 127
9.2結構成員 128
9.3結構和類的區別 128
9.3.1繼承 129
9.3.2this保留字 129
9.3.3構造函式 130
9.4實例1:創建坐標點結構Point 130
9.4.1設計Point結構 130
9.4.2測試Point結構 131
9.5實例2:創建複數結構Complex 132
9.5.1設計Complex結構 132
9.5.2測試Complex結構 133
9.6上機實踐 134
9.7常見問題及解答 135
9.8小結 135
9.9習題 135
第10章數組 136
10.1數組概述 136
10.1.1數組的維度數 136
10.1.2聲明數組 137
10.1.3實例化數組 137
10.1.4初始化數組 137
10.1.5遍歷數組 138
10.2數組分類 139
10.2.1一維數組 139
10.2.2二維數組 140
10.2.3多維數組 140
10.2.4交錯數組 141
10.3靜態數組System.Array 142
10.3.1屬性 142
10.3.2方法 143
10.3.3獲取數組長度 144
10.3.4獲取元素的值 145
10.3.5設定元素的值 145
10.3.6獲取元素的索引 145
10.3.7排序數組 145
10.3.8反轉數組 146
10.4動態數組System.ArrayList 146
10.4.1屬性 147
10.4.2方法 147
10.4.3添加元素 148
10.4.4移除元素 148
10.5實例:抽籤程式 149
10.6上機實踐 150
10.7常見問題及解答 150
10.8小結 151
10.9習題 151
第11章接口 152
11.1接口概述 152
11.1.1接口聲明 152
11.1.2接口修飾符 152
11.1.3接口繼承 153
11.2接口成員 153
11.2.1屬性 154
11.2.2索引器 154
11.2.3方法 154
11.2.4事件 155
11.3實現接口 155
11.3.1實現屬性 156
11.3.2實現索引器 156
11.3.3實現方法 157
11.3.4實現事件 157
11.4抽象類和接口 157
11.5實例:設計算術計算接口 158
11.6上機實踐 160
11.7常見問題及解答 161
11.8小結 162
11.9習題 162
第12章委託和事件 163
12.1委託 163
12.1.1委託聲明 163
12.1.2創建向委託註冊方法 164
12.1.3委託實例化 165
12.1.4委託的方法列表 165
12.1.5委託調用 166
12.2事件 167
12.2.1聲明事件 167
12.2.2註冊事件 168
12.2.3移除事件 168
12.2.4調用事件 168
12.3實例:測試列印事件 168
12.4上機實踐 170
12.5常見問題及解答 171
12.6小結 172
12.7習題 172
第13章異常處理 173
13.1異常概述 173
13.1.1導致異常的原因 173
13.1.2try語句 173
13.1.3異常處理 175
13.2System.Exception類 175
13.3常用異常類 176
13.4實例:自定義異常處理類 177
13.4.1設計CustomException類 177
13.4.2使用CustomException類處理異常 178
13.5上機實踐 179
13.6常見問題及解答 180
13.7小結 181
13.8習題 181
第4篇C#語法擴展篇
第14章泛型 184
14.1泛型概述 184
14.1.1泛型類聲明 184
14.1.2類型形參 185
14.1.3類型形參的約束 185
14.1.4泛型類的成員 186
14.1.5泛型類的靜態欄位 187
14.2泛型方法 187
14.2.1聲明泛型方法 188
14.2.2調用泛型方法 188
14.2.3通過委託調用泛型方法 189
14.2.4虛泛型方法 189
14.3實例1:實現泛型列表 190
14.3.1設計泛型列表類GenericList<T> 190
14.3.2測試泛型列表 192
14.4實例2:實現泛型堆疊 192
14.4.1設計泛型堆疊類GenericStack<T> 193
14.4.2測試泛型堆疊 194
14.5上機實踐 195
14.6常見問題及解答 195
14.7小結 196
14.8習題 196
第15章分部類型和可空類型 197
15.1分部類型 197
15.1.1聲明分部類 197
15.1.2聲明分部結構 198
15.1.3聲明分部接口 198
15.1.4同名成員處理 199
15.1.5處理基接口 200
15.2可空類型 200
15.2.1HasValue和Value屬性 201
15.2.2GetValueOrDefault()方法 202
15.2.3bool?類型 202
15.3實例:測試可空類型 203
15.4上機實踐 204
15.5常見問題及解答 205
15.6小結 205
15.7習題 205
第16章隱型變數、初始化器、匿名類型和隱型數組 206
16.1隱型局部變數 206
16.1.1聲明隱型局部變數 206
16.1.2使用隱型局部變數 207
16.2對象初始化器 209
16.3集合初始化器 210
16.4匿名類型 211
16.5隱型數組 212
16.6實例:在foreach語句中使用隱型局部變數 213
16.7上機實踐 214
16.8常見問題及解答 215
16.9小結 215
16.10習題 215
第17章疊代器、匿名方法和擴展方法 216
17.1疊代器 216
17.1.1創建非泛型疊代器 216
17.1.2創建泛型疊代器 217
17.1.3IEnumerator和IEnumerator<T>接口 218
17.2匿名方法 219
17.2.1創建匿名方法 219
17.2.2將匿名方法作為參數傳遞 220
17.3擴展方法 221
17.3.1聲明擴展方法 221
17.3.2導入擴展方法 222
17.3.3調用擴展方法 222
17.4實例:擴展string類型的方法 223
17.5上機實踐 223
17.6常見問題及解答 224
17.7小結 224
17.8習題 225
第18章Lambda表達式和查詢表達式 226
18.1Lambda表達式 226
18.1.1輸入參數 227
18.1.2表達式或語句塊 227
18.2查詢表達式 228
18.2.1from子句 228
18.2.2select子句 230
18.2.3where子句 231
18.2.4let子句 232
18.2.5orderby子句 232
18.2.6group子句 233
18.2.7into子句 234
18.2.8join子句 234
18.3實例:使用Lambda表達式查詢XML 237
18.4上機實踐 238
18.5常見問題及解答 239
18.6小結 240
18.7習題 240
第5篇套用篇
第19章字元串處理 242
19.1String和StringBuilder類 242
19.1.1String類 242
19.1.2StringBuilder類 243
19.2不變字元串處理 244
19.2.1插入字元串 244
19.2.2移除字元串 245
19.2.3替換字元串 245
19.2.4聯接字元串 246
19.2.5分隔字元串 247
19.2.6填充字元串 247
19.2.7查找字元串 248
19.2.8獲取子串 248
19.2.9格式化字元串 249
19.3可變字元串處理 250
19.3.1插入字元串 251
19.3.2追加字元串 251
19.3.3移除字元串 251
19.3.4替換字元串 252
19.3.5複製字元串 252
19.4實例:詞頻統計 253
19.5上機實踐 257
19.6常見問題及解答 257
19.7小結 257
19.8習題 258
第20章日期和時間處理 259
20.1DateTime結構 259
20.1.1欄位 259
20.1.2屬性 260
20.1.3方法 261
20.2TimeSpan結構 263
20.2.1欄位 263
20.2.2屬性 263
20.2.3方法 264
20.3日期和時間的常用操作 265
20.3.1格式化 265
20.3.2計算時間差 266
20.3.3追加時間 267
20.4實例:計算for循環的運算時間 267
20.5上機實踐 268
20.6常見問題及解答 269
20.7小結 269
20.8習題 269
第21章I/O流、目錄和檔案處理 270
21.1I/O流 270
21.1.1檔案流 271
21.1.2記憶體流 272
21.2目錄處理 274
21.2.1Directory類 274
21.2.2DirectoryInfo類 275
21.2.3創建目錄 276
21.2.4刪除目錄 277
21.2.5移動目錄 277
21.2.6遍歷目錄 278
21.3檔案處理 278
21.3.1File類 278
21.3.2FileInfo類 279
21.3.3創建檔案 280
21.3.4寫入檔案 280
21.3.5讀取檔案 281
21.3.6移動檔案 281
21.3.7刪除檔案 282
21.4實例:讀取目錄下指定類型的檔案的內容 282
21.5上機實踐 285
21.6常見問題及解答 285
21.7小結 286
21.8習題 286
第22章Windows窗體編程 287
22.1.1創建Sample_22Windows窗體應用程式 287
22.1.2應用程式起始點 288
22.1.3配置程式集信息 289
22.2基本控制項 290
22.2.1標籤控制項 290
22.2.2圖片框控制項 290
22.2.3文本框和富文本框 291
22.2.4按鈕控制項 291
22.2.5單項按鈕和複選框 292
22.3MainForm.cs窗體設計 292
22.3.1配置窗體屬性 292
22.3.2添加控制項 292
22.3.3創建等待對話框 293
22.3.4添加窗體事件 294
22.4選單和工具列 295
22.4.1選單 295
22.4.2工具列 296
22.4.3上下文選單 297
22.5容器 298
22.5.1面板 298
22.5.2組合框 299
22.5.3TabControl控制項 299
22.5.4容器窗體 300
22.6對話框 302
22.6.1對話框窗體 302
22.6.2顏色對話框 303
22.6.3字型對話框 304
22.6.4打開檔案對話框 305
22.6.5保存檔案對話框 306
22.6.6目錄瀏覽對話框 307
22.7數據格線視圖控制項 308
22.8運行應用程式 309
22.9上機實踐 310
22.10常見問題及解答 310
22.11小結 311
22.12習題 311
第23章使用GDI+繪圖 312
23.1GDI+概述 312
23.1.1Graphics類 312
23.1.2點和區域 315
23.1.3顏色 317
23.1.4刷 318
23.1.5畫筆 318
23.1.6字型 319
23.2實例:使用GDI+繪製線條、形狀和文本 320
23.2.1創建Sample_23窗體應用程式 320
23.2.2Paint事件 321
23.2.3繪製直線 321
23.2.4繪製折線 322
23.2.5繪製曲線 323
23.2.6繪製虛線 324
23.2.7繪製矩形 326
23.2.8繪製三角形 327
23.2.9繪製多邊形 327
23.2.10繪製橢圓 328
23.2.11繪製餅狀圖 329
23.2.12繪製文本 331
23.3上機實踐 332
23.4常見問題及解答 333
23.5小結 333
23.6習題 333
第24章.NET數據訪問 335
24.1ADO.NET概述 335
24.1.1ADO.NET組成結構 335
24.1.2ADO.NET基本對象 336
24.2實例:操作SQLServer資料庫 341
24.2.1創建Sample_24窗體應用程式 341
24.2.2創建CSharp3DB資料庫 342
24.2.3連線資料庫 343
24.2.4讀取數據 344
24.2.5插入數據 345
24.2.6修改數據 347
24.2.7刪除數據 348
24.2.8使用DataGridView控制項顯示數據 349
24.2.9使用ListView控制項顯示數據 350
24.2.10使用TreeView控制項顯示數據 352
24.3上機實踐 353
24.4常見問題及解答 354
24.5小結 354
24.6習題 354
第6篇實踐篇
第25章圖書管理系統 356
25.1系統總體設計 356
25.1.1系統功能設計 356
25.1.2圖書管理系統組成 357
25.1.3資料庫設計 358
25.1.4資料庫實體類設計 360
25.1.5應用程式主入口 360
25.1.6應用程式全局變數 361
25.2管理員模組實現 361
25.2.1管理員登錄 361
25.2.2主視窗 363
25.2.3分類管理 370
25.2.4書籍管理 376
25.2.5借閱書籍 380
25.2.6查看借閱人 385
25.3學生和老師功能模組實現 387
25.3.1學生或老師登錄 387
25.3.2主視窗 387
25.3.3歸還書籍 391
25.3.4查看書籍信息 393
25.3.5瀏覽書籍 395
25.3.6借閱書籍 399
25.4上機實踐 399
25.5常見問題及解答 399
25.6小結 400
25.7習題 400
第26章P2P聊天工具 401
26.1系統總體設計 401
26.1.1系統功能設計 401
26.1.2P2P聊天工具組成 401
26.2P2P聊天工具類庫實現 402
26.2.1Tool類 402
26.2.2P2P類 403
26.3P2P聊天工具伺服器聊天視窗 406
26.4P2P聊天工具客戶端聊天視窗 409
26.5上機實踐 409
26.6小結 409
26.7習題 409
第27章我的校區域網路 410
27.1系統總體設計 410
27.1.1系統功能設計 410
27.1.2校區域網路組成 410
27.1.3資料庫設計 411
27.1.4資料庫實體類設計 413
27.1.5標題模組 413
27.1.6配置檔案Web.config 414
27.2常用功能模組實現 414
27.2.1登錄頁面 415
27.2.2主頁面 416
27.2.3我的好友 417
27.2.4添加好友 420
27.2.5我的相冊 423
27.2.6上傳照片 426
27.2.7我的日誌 429
27.2.8添加日誌 432
27.3常見問題及解答 434
27.4小結 434
27.5習題 435
2.1.6整理HelloWorld應用程式的代碼 22
2.2編譯和運行HelloWorld應用程式 23
2.3C#程式的概念擴展 24
2.4上機實踐 24
2.5小結 25
2.6習題 25
第2篇C#基礎語法篇
第3章類型 28
3.1類型概述 28
3.2值類型 29
3.2.1System.ValueType類型 29
3.2.2整數類型 30
3.2.3浮點型 31
3.2.4decimal類型 32
3.2.5bool類型 32
3.2.6枚舉類型 32
3.2.7結構類型 33
3.2.8實例1:把整數轉換為二進制數 34
3.2.9實例2:把二進制數轉換為整數 35
3.3引用類型 36
3.3.1對象類型 36
3.3.2字元串類型 36
3.3.3類類型 37
3.3.4數組類型 37
3.3.5接口類型 37
3.3.6委託類型 38
3.4裝箱和拆箱 38
3.4.1裝箱 38
3.4.2拆箱 39
3.5上機實踐 39
3.6常見問題及解答 40
3.7小結 40
3.8習題 41
第4章變數 42
4.1變數概述 42
4.2變數分類 43
4.2.1靜態變數 43
4.2.2實例變數 44
4.2.3局部變數 45
4.2.4值參數 46
4.2.5引用參數 46
4.2.6輸出參數 47
4.2.7數組元素 48
4.3變數賦值 48
4.4實例1:使用值參數傳遞數據 49
4.5實例2:使用ref參數傳遞數據 50
4.6實例3:使用out參數返回數據 51
4.7變數轉換 52
4.7.1隱式轉換 52
4.7.2顯式轉換 53
4.8上機實踐 54
4.9常見問題及解答 54
4.10小結 55
4.11習題 55
第5章表達式和運算符 56
5.1表達式 56
5.1.1表達式分類 56
5.1.3base關鍵字 58
5.1.4new關鍵字 58
5.2運算符 60
5.2.1運算符優先權 60
5.2.2一元運算符 61
5.2.6條件邏輯運算符 65
5.2.8關係和類型測試運算符 66
5.3實例1:使用checked和unchecked運算符檢查運算 67
5.4實例2:複數運算符重載 68
5.5上機實踐 70
5.6常見問題及解答 71
5.7小結 71
5.8習題 71
第6章語句 72
6.1語句概述 72
6.2基本語句 73
6.2.1空語句 73
6.2.2標記語句 73
6.2.3表達式語句 74
6.2.4聲明語句 74
6.2.5塊 75
6.3跳轉語句 75
6.3.1break語句 75
6.3.2continue語句 76
6.3.3return語句 76
6.3.4throw語句 77
6.4選擇語句 78
6.4.1if語句 78
6.4.2switch語句 79
6.5疊代語句 81
6.5.1for語句 81
6.5.2foreach語句 82
6.5.3while語句 83
6.5.4do語句 84
6.6其他語句 85
6.6.1try語句 85
6.6.2using語句 86
6.6.3lock語句 87
6.6.4checked和unchecked語句 88
6.7實例:判斷閏年 88
6.8上機實踐 89
6.9常見問題及解答 90
6.10小結 90
6.11習題 90
第7章命名空間 92
7.1命名空間概述 92
7.2聲明命名空間 92
7.3.(點號)運算符 94
7.4::(雙冒號)運算符 95
7.5using指令 95
7.5.1創建命名空間或類型別名 95
7.5.2導入命名空間 96
7.6.NETFramework常用命名空間 96
7.7上機實踐 97
7.8常見問題及解答 98
7.9小結 98
7.10習題 99
第3篇C#面向對象編程篇
第8章類 102
8.1類概述 102
8.1.1類聲明 102
8.1.2類修飾符 102
8.1.3類繼承 103
8.1.4類、對象和實例化 104
8.2類成員 104
8.2.1常量 105
8.2.2欄位 106
8.2.3方法 107
8.2.4屬性 111
8.2.5索引器 112
8.2.6構造函式 114
8.2.7析構函式 117
8.2.8事件 117
8.3實例:使用類的繼承特性 118
8.3.1設計Person類 119
8.3.2設計Teacher類 121
8.3.3設計Student類 122
8.3.4測試Person、Teacher和Student類 123
8.4上機實踐 124
8.5常見問題及解答 125
8.6小結 125
8.7習題 125
第9章結構 127
9.1結構概述 127
9.2結構成員 128
9.3結構和類的區別 128
9.3.1繼承 129
9.3.2this保留字 129
9.3.3構造函式 130
9.4實例1:創建坐標點結構Point 130
9.4.1設計Point結構 130
9.4.2測試Point結構 131
9.5實例2:創建複數結構Complex 132
9.5.1設計Complex結構 132
9.5.2測試Complex結構 133
9.6上機實踐 134
9.7常見問題及解答 135
9.8小結 135
9.9習題 135
第10章數組 136
10.1數組概述 136
10.1.1數組的維度數 136
10.1.2聲明數組 137
10.1.3實例化數組 137
10.1.4初始化數組 137
10.1.5遍歷數組 138
10.2數組分類 139
10.2.1一維數組 139
10.2.2二維數組 140
10.2.3多維數組 140
10.2.4交錯數組 141
10.3靜態數組System.Array 142
10.3.1屬性 142
10.3.2方法 143
10.3.3獲取數組長度 144
10.3.4獲取元素的值 145
10.3.5設定元素的值 145
10.3.6獲取元素的索引 145
10.3.7排序數組 145
10.3.8反轉數組 146
10.4動態數組System.ArrayList 146
10.4.1屬性 147
10.4.2方法 147
10.4.3添加元素 148
10.4.4移除元素 148
10.5實例:抽籤程式 149
10.6上機實踐 150
10.7常見問題及解答 150
10.8小結 151
10.9習題 151
第11章接口 152
11.1接口概述 152
11.1.1接口聲明 152
11.1.2接口修飾符 152
11.1.3接口繼承 153
11.2接口成員 153
11.2.1屬性 154
11.2.2索引器 154
11.2.3方法 154
11.2.4事件 155
11.3實現接口 155
11.3.1實現屬性 156
11.3.2實現索引器 156
11.3.3實現方法 157
11.3.4實現事件 157
11.4抽象類和接口 157
11.5實例:設計算術計算接口 158
11.6上機實踐 160
11.7常見問題及解答 161
11.8小結 162
11.9習題 162
第12章委託和事件 163
12.1委託 163
12.1.1委託聲明 163
12.1.2創建向委託註冊方法 164
12.1.3委託實例化 165
12.1.4委託的方法列表 165
12.1.5委託調用 166
12.2事件 167
12.2.1聲明事件 167
12.2.2註冊事件 168
12.2.3移除事件 168
12.2.4調用事件 168
12.3實例:測試列印事件 168
12.4上機實踐 170
12.5常見問題及解答 171
12.6小結 172
12.7習題 172
第13章異常處理 173
13.1異常概述 173
13.1.1導致異常的原因 173
13.1.2try語句 173
13.1.3異常處理 175
13.2System.Exception類 175
13.3常用異常類 176
13.4實例:自定義異常處理類 177
13.4.1設計CustomException類 177
13.4.2使用CustomException類處理異常 178
13.5上機實踐 179
13.6常見問題及解答 180
13.7小結 181
13.8習題 181
第4篇C#語法擴展篇
第14章泛型 184
14.1泛型概述 184
14.1.1泛型類聲明 184
14.1.2類型形參 185
14.1.3類型形參的約束 185
14.1.4泛型類的成員 186
14.1.5泛型類的靜態欄位 187
14.2泛型方法 187
14.2.1聲明泛型方法 188
14.2.2調用泛型方法 188
14.2.3通過委託調用泛型方法 189
14.2.4虛泛型方法 189
14.3實例1:實現泛型列表 190
14.3.1設計泛型列表類GenericList<T> 190
14.3.2測試泛型列表 192
14.4實例2:實現泛型堆疊 192
14.4.1設計泛型堆疊類GenericStack<T> 193
14.4.2測試泛型堆疊 194
14.5上機實踐 195
14.6常見問題及解答 195
14.7小結 196
14.8習題 196
第15章分部類型和可空類型 197
15.1分部類型 197
15.1.1聲明分部類 197
15.1.2聲明分部結構 198
15.1.3聲明分部接口 198
15.1.4同名成員處理 199
15.1.5處理基接口 200
15.2可空類型 200
15.2.1HasValue和Value屬性 201
15.2.2GetValueOrDefault()方法 202
15.2.3bool?類型 202
15.3實例:測試可空類型 203
15.4上機實踐 204
15.5常見問題及解答 205
15.6小結 205
15.7習題 205
第16章隱型變數、初始化器、匿名類型和隱型數組 206
16.1隱型局部變數 206
16.1.1聲明隱型局部變數 206
16.1.2使用隱型局部變數 207
16.2對象初始化器 209
16.3集合初始化器 210
16.4匿名類型 211
16.5隱型數組 212
16.6實例:在foreach語句中使用隱型局部變數 213
16.7上機實踐 214
16.8常見問題及解答 215
16.9小結 215
16.10習題 215
第17章疊代器、匿名方法和擴展方法 216
17.1疊代器 216
17.1.1創建非泛型疊代器 216
17.1.2創建泛型疊代器 217
17.1.3IEnumerator和IEnumerator<T>接口 218
17.2匿名方法 219
17.2.1創建匿名方法 219
17.2.2將匿名方法作為參數傳遞 220
17.3擴展方法 221
17.3.1聲明擴展方法 221
17.3.2導入擴展方法 222
17.3.3調用擴展方法 222
17.4實例:擴展string類型的方法 223
17.5上機實踐 223
17.6常見問題及解答 224
17.7小結 224
17.8習題 225
第18章Lambda表達式和查詢表達式 226
18.1Lambda表達式 226
18.1.1輸入參數 227
18.1.2表達式或語句塊 227
18.2查詢表達式 228
18.2.1from子句 228
18.2.2select子句 230
18.2.3where子句 231
18.2.4let子句 232
18.2.5orderby子句 232
18.2.6group子句 233
18.2.7into子句 234
18.2.8join子句 234
18.3實例:使用Lambda表達式查詢XML 237
18.4上機實踐 238
18.5常見問題及解答 239
18.6小結 240
18.7習題 240
第5篇套用篇
第19章字元串處理 242
19.1String和StringBuilder類 242
19.1.1String類 242
19.1.2StringBuilder類 243
19.2不變字元串處理 244
19.2.1插入字元串 244
19.2.2移除字元串 245
19.2.3替換字元串 245
19.2.4聯接字元串 246
19.2.5分隔字元串 247
19.2.6填充字元串 247
19.2.7查找字元串 248
19.2.8獲取子串 248
19.2.9格式化字元串 249
19.3可變字元串處理 250
19.3.1插入字元串 251
19.3.2追加字元串 251
19.3.3移除字元串 251
19.3.4替換字元串 252
19.3.5複製字元串 252
19.4實例:詞頻統計 253
19.5上機實踐 257
19.6常見問題及解答 257
19.7小結 257
19.8習題 258
第20章日期和時間處理 259
20.1DateTime結構 259
20.1.1欄位 259
20.1.2屬性 260
20.1.3方法 261
20.2TimeSpan結構 263
20.2.1欄位 263
20.2.2屬性 263
20.2.3方法 264
20.3日期和時間的常用操作 265
20.3.1格式化 265
20.3.2計算時間差 266
20.3.3追加時間 267
20.4實例:計算for循環的運算時間 267
20.5上機實踐 268
20.6常見問題及解答 269
20.7小結 269
20.8習題 269
第21章I/O流、目錄和檔案處理 270
21.1I/O流 270
21.1.1檔案流 271
21.1.2記憶體流 272
21.2目錄處理 274
21.2.1Directory類 274
21.2.2DirectoryInfo類 275
21.2.3創建目錄 276
21.2.4刪除目錄 277
21.2.5移動目錄 277
21.2.6遍歷目錄 278
21.3檔案處理 278
21.3.1File類 278
21.3.2FileInfo類 279
21.3.3創建檔案 280
21.3.4寫入檔案 280
21.3.5讀取檔案 281
21.3.6移動檔案 281
21.3.7刪除檔案 282
21.4實例:讀取目錄下指定類型的檔案的內容 282
21.5上機實踐 285
21.6常見問題及解答 285
21.7小結 286
21.8習題 286
第22章Windows窗體編程 287
22.1.1創建Sample_22Windows窗體應用程式 287
22.1.2應用程式起始點 288
22.1.3配置程式集信息 289
22.2基本控制項 290
22.2.1標籤控制項 290
22.2.2圖片框控制項 290
22.2.3文本框和富文本框 291
22.2.4按鈕控制項 291
22.2.5單項按鈕和複選框 292
22.3MainForm.cs窗體設計 292
22.3.1配置窗體屬性 292
22.3.2添加控制項 292
22.3.3創建等待對話框 293
22.3.4添加窗體事件 294
22.4選單和工具列 295
22.4.1選單 295
22.4.2工具列 296
22.4.3上下文選單 297
22.5容器 298
22.5.1面板 298
22.5.2組合框 299
22.5.3TabControl控制項 299
22.5.4容器窗體 300
22.6對話框 302
22.6.1對話框窗體 302
22.6.2顏色對話框 303
22.6.3字型對話框 304
22.6.4打開檔案對話框 305
22.6.5保存檔案對話框 306
22.6.6目錄瀏覽對話框 307
22.7數據格線視圖控制項 308
22.8運行應用程式 309
22.9上機實踐 310
22.10常見問題及解答 310
22.11小結 311
22.12習題 311
第23章使用GDI+繪圖 312
23.1GDI+概述 312
23.1.1Graphics類 312
23.1.2點和區域 315
23.1.3顏色 317
23.1.4刷 318
23.1.5畫筆 318
23.1.6字型 319
23.2實例:使用GDI+繪製線條、形狀和文本 320
23.2.1創建Sample_23窗體應用程式 320
23.2.2Paint事件 321
23.2.3繪製直線 321
23.2.4繪製折線 322
23.2.5繪製曲線 323
23.2.6繪製虛線 324
23.2.7繪製矩形 326
23.2.8繪製三角形 327
23.2.9繪製多邊形 327
23.2.10繪製橢圓 328
23.2.11繪製餅狀圖 329
23.2.12繪製文本 331
23.3上機實踐 332
23.4常見問題及解答 333
23.5小結 333
23.6習題 333
第24章.NET數據訪問 335
24.1ADO.NET概述 335
24.1.1ADO.NET組成結構 335
24.1.2ADO.NET基本對象 336
24.2實例:操作SQLServer資料庫 341
24.2.1創建Sample_24窗體應用程式 341
24.2.2創建CSharp3DB資料庫 342
24.2.3連線資料庫 343
24.2.4讀取數據 344
24.2.5插入數據 345
24.2.6修改數據 347
24.2.7刪除數據 348
24.2.8使用DataGridView控制項顯示數據 349
24.2.9使用ListView控制項顯示數據 350
24.2.10使用TreeView控制項顯示數據 352
24.3上機實踐 353
24.4常見問題及解答 354
24.5小結 354
24.6習題 354
第6篇實踐篇
第25章圖書管理系統 356
25.1系統總體設計 356
25.1.1系統功能設計 356
25.1.2圖書管理系統組成 357
25.1.3資料庫設計 358
25.1.4資料庫實體類設計 360
25.1.5應用程式主入口 360
25.1.6應用程式全局變數 361
25.2管理員模組實現 361
25.2.1管理員登錄 361
25.2.2主視窗 363
25.2.3分類管理 370
25.2.4書籍管理 376
25.2.5借閱書籍 380
25.2.6查看借閱人 385
25.3學生和老師功能模組實現 387
25.3.1學生或老師登錄 387
25.3.2主視窗 387
25.3.3歸還書籍 391
25.3.4查看書籍信息 393
25.3.5瀏覽書籍 395
25.3.6借閱書籍 399
25.4上機實踐 399
25.5常見問題及解答 399
25.6小結 400
25.7習題 400
第26章P2P聊天工具 401
26.1系統總體設計 401
26.1.1系統功能設計 401
26.1.2P2P聊天工具組成 401
26.2P2P聊天工具類庫實現 402
26.2.1Tool類 402
26.2.2P2P類 403
26.3P2P聊天工具伺服器聊天視窗 406
26.4P2P聊天工具客戶端聊天視窗 409
26.5上機實踐 409
26.6小結 409
26.7習題 409
第27章我的校區域網路 410
27.1系統總體設計 410
27.1.1系統功能設計 410
27.1.2校區域網路組成 410
27.1.3資料庫設計 411
27.1.4資料庫實體類設計 413
27.1.5標題模組 413
27.1.6配置檔案Web.config 414
27.2常用功能模組實現 414
27.2.1登錄頁面 415
27.2.2主頁面 416
27.2.3我的好友 417
27.2.4添加好友 420
27.2.5我的相冊 423
27.2.6上傳照片 426
27.2.7我的日誌 429
27.2.8添加日誌 432
27.3常見問題及解答 434
27.4小結 434
27.5習題 435

相關詞條

熱門詞條

聯絡我們