內容簡介
本書套用“項目驅動”教學模式,通過完整的項目案例系統地介紹了使用C#進行程式設計與開發的方法和技術。全書論述了C#核心技術概述、C#基礎語法、流程控制、C#面向對象核心語法、C#面向對象高級語法、異常處理、使用WinForm建立用戶圖形界面、多執行緒高級編程、檔案與流、TCP /UDP網路編程以及ADO.NET資料庫開發等內容。
本書注重理論與實求囑幾主踐相結合,內容詳盡,提供了大量實例,突出套用能力的培養,將一個實際項目的知識點分解在各章作為案例講解,是一本實用性突出的教材。本書適合作為高等學校計算機、軟體工程及相關信息類專業C#課程的教材,也可供設計開發人員學習參考。
圖書目錄
第1章C#核心技術概述1
1.1Microsoft .NET介紹1
1.1.1Microsoft .NET產生背景1
1.1.2Microsoft .NET 框架基悼汗捆本模組2
1.1.3Microsoft .NET平台的意義4
1.2C#概述5
1.2.1C#產生的歷史5
1.2.2C#與面向對象7
1.2.3C#特點7
1.3C#程式開發實例8
1.3.1C#程式的基本結構8
1.3.2編譯和運行C#應用程式10
1.3.3集成開發環境Visual Studio11
本章總結13
習題13
第2章艾斯醫藥系統項目案例介紹14
2.1項目概述14
2.2需求分析15
2.3系統分析設計16
2.4項目運行指南17
第3章C#基礎語法18
3.1C#基本語法要求屑堡囑戒18
3.2數據類型19
3.2.1值類型19
3.2.2引用類型23
3.2.3值類型和引用境蘭設類型的區別23〖2〗3.3常量與變數25
3.3.1常量25
3.3.2變數26
3.4運算符和表達式27
3.4.1算術運算符27
3.4.2關係運算符27
3.4.3邏輯運算符28
3.4.4賦值運算符29
3.4.5位運算符29
3.4.6條件運算符30
3.4.7其他運算符30
3.4.8運算符的優先權31
3.5數據類型轉換32
3.5.1隱式轉換32
3.5.2顯式轉換33
3.5.3拆箱與良艱榜裝箱34
3.5.4.NET類庫支持欠膠的方法轉換34
3.6項目案例35
3.6.1學習目標35
3.6.2案例描述35
3.6.3案例要點35
3.6.4案例實施36
3.6.5特別提示36
3.6.6拓展與提高37
本章總結38
習題38
第4章流程控制40
4.1順序流程40
4.2分支流程41
4.2.1if語句41
4.2.2switch語句43
4.3循環流程46
4.3.1while循環464.3.2do…while循環47
4.3.3for循環48
4.3.4foreach循環49
4.4跳轉流程50
4.4.1break語句50
4.4.2continue語句51
4.4.3return語句51
4.4.4goto語句52
4.4.5異常處理語句try…catch…finally52
4.5項目案例54
4.5.1學習目標54
4.5.2案例描述54
4.5.3案例要點55
4.5.4案例實施55
4.5.5特別提示56
4.5.6拓展與提高56
本章總結56
習題56
第5章C#面向對象核心語法58
5.1面向對象的概念58
5.1.1對象和類概述58
5.1.2類、方法和變數59
5.1.3構造方法和析構方法61
5.1.4方端姜試法重載62
5.1.5this的使用64
5.1.6命名空間66
5.2封裝68
5.2.1封裝概述68
5.2.2屬性與索引器68
5.2.3內部類72
5.2.4分部類72
5.3繼承73
5.3.1繼承的概念735.3.2base的使用75
5.3.3重寫方法與隱藏方法78
5.4多態82
5.4.1多態概念82
5.4.2多態實現的條件83
5.4.3多態性的代碼實現83
5.5項目案例85
5.5.1學習目標85
5.5.2案例描述85
5.5.3案例要點85
5.5.4案例實施85
5.5.5特別提示86
5.5.6拓展與提高86
本章總結87
習題87
第6章C#面向對象高級語法(一)90
6.1靜態變數和方法90
6.1.1靜態變數90
6.1.2靜態方法92
6.2密封類和方法93
6.3抽象類和抽象方法93
6.3.1抽象類93
6.3.2抽象方法94
6.4接口95
6.4.1接口的定義95
6.4.2接口的實現96
6.5項目案例100
6.5.1學習目標100
6.5.2案例描述100
6.5.3案例要點100
6.5.4案例實施100
6.5.5特別提示100
6.5.6拓展與提高100本章總結101
習題101
第7章C#面向對象高級語法(二)103
7.1運算符重載103
7.1.1重載運算符的原則104
7.1.2重載標準運算符104
7.2數組105
7.2.1一維數組106
7.2.2多維數組107
7.2.3數組的使用107
7.3字元串110
7.3.1構造string類字元串110
7.3.2字元串處理111
7.3.3字元串數組的使用113
7.3.4StringBuilder類113
7.4集合115
7.4.1集合與接口115
7.4.2ArrayList類117
7.4.3Queue類119
7.4.4Stack類120
7.4.5Hashtable類121
7.4.6SortedList類123
7.5委託與事件123
7.5.1委託124
7.5.2事件126
7.6泛型130
7.6.1泛型的概念130
7.6.2泛型的聲明和使用130
7.6.3泛型約束132
7.6.4泛型集合132
7.7項目案例133
7.7.1學習目標133
7.7.2案例描述1337.7.3案例要點134
7.7.4案例實施134
7.7.5特別提示135
7.7.6拓展與提高135
本章總結136
習題136
第8章異常處理138
8.1異常處理機制138
8.1.1異常處理基礎138
8.1.2異常基類139
8.2捕獲異常139
8.2.1checked和unchecked語句140
8.2.2捕獲多個異常141
8.3使用finally塊143
8.4拋出異常144
8.5項目案例146
8.5.1學習目標146
8.5.2案例描述147
8.5.3案例要點147
8.5.4案例實施147
8.5.5特別提示148
8.5.6拓展與提高148
本章總結148
習題149
第9章使用WinForm建立用戶圖形界面151
9.1窗體編程概述151
9.1.1窗體定義152
9.1.2創建Windows窗體應用程式152
9.2窗體編程基礎155
9.2.1.NET Framework窗體編程相關基類155
9.2.2通用控制項屬性155
9.2.3回響控制項事件1599.3窗體控制項和組件簡介160
9.3.1常用控制項160
9.3.2選單設計180
9.3.3對話框設計184
9.3.4工具列與狀態欄設計189
9.4項目案例192
9.4.1學習目標192
9.4.2案例描述192
9.4.3案例要點192
9.4.4案例實施192
9.4.5特別提示193
9.4.6拓展與提高194
本章總結194
習題194
第10章多執行緒高級編程195
10.1多執行緒的概念195
10.1.1多執行緒基礎196
10.1.2Thread類197
10.2執行緒狀態200
10.2.1創建和啟動執行緒201
10.2.2執行緒優先權及調度206
10.2.3暫停和中斷執行緒208
10.2.4掛起和喚醒執行緒210
10.2.5銷毀執行緒211
10.3執行緒的同步213
10.3.1並發的問題213
10.3.2使用lock關鍵字215
10.3.3使用Monitor關鍵字216
10.3.4同步問題218
10.4執行緒池219
10.5項目案例222
10.5.1學習目標222
10.5.2案例描述22210.5.3案例要點222
10.5.4案例實施222
10.5.5特別提示225
10.5.6拓展與提高225
本章總結225
習題225
第11章檔案與流227
11.1檔案系統中的和檔案管理227
11.1.1DriveInfo229
11.1.2Directory和DirectoryInfo231
11.1.3File和FileInfo237
11.1.4Path類241
11.2基於流的檔案讀寫操作242
11.2.1流的概念242
11.2.2FileStream類243
11.2.3StreamReader和StreamWriter245
11.2.4StringReader和StringWriter249
11.2.5BinaryReader和BinaryWriter250
11.3XML檔案操作252
11.3.1XML基礎252
11.3.2XML創建254
11.3.3XML數據處理257
11.4項目案例262
11.4.1學習目標262
11.4.2案例描述263
11.4.3案例要點263
11.4.4案例實施263
11.4.5特別提示266
11.4.6拓展與提高266
本章總結266
習題266
第12章TCP/UDP網路編程初步268
12.1網路編程簡介26812.1.1網路基礎概述268
12.1.2TCP/IP270
12.1.3UDP/IP270
12.1.4System.NET和System.NET.Sockets命名空間271
12.2基於TCP/IP的網路編程272
12.2.1TcpClient272
12.2.2TcpListener274
12.2.3客戶機程式276
12.2.4伺服器程式277
12.2.5TCP的網路編程實例280
12.3基於UDP/IP的網路編程281
12.3.1UdpClient281
12.3.2基於UdpClient的編程實例283
12.3.3用UDP實現多播284
12.4項目案例286
12.4.1學習目標286
12.4.2案例描述286
12.4.3案例要點286
12.4.4案例實施286
12.4.5特別提示291
12.4.6拓展與提高291
本章總結291
習題291
第13章ADO.NET資料庫開發293
13.1ADO.NET概述293
13.1.1ADO.NET核心組件294
13.1.2.NET Framework數據提供程式295
13.2連線資料庫295
13.2.1創建School資料庫295
13.2.2構造Connection對象296
13.2.3Connection對象的屬性和方法297
13.2.4連線資料庫的套用298
13.3ADO.NET和資料庫的互動29913.3.1利用Command對象299
13.3.2利用DataReader對象303
13.3.3利用DataAdapter對象306
13.4數據集DataSet307
13.4.1虛擬記憶體資料庫DataSet308
13.4.2虛擬記憶體表DataTable309
13.4.3DataColumn對象310
13.4.4DataRow對象310
13.4.5DataView對象313
13.4.6Constant集合314
13.4.7DataRelation對象315
13.5項目案例315
13.5.1學習目標315
13.5.2案例描述316
13.5.3案例要點316
13.5.4案例實施316
13.5.5特別提示319
13.5.6拓展與提高320
本章總結320
習題320
致謝322
習題38
第4章流程控制40
4.1順序流程40
4.2分支流程41
4.2.1if語句41
4.2.2switch語句43
4.3循環流程46
4.3.1while循環464.3.2do…while循環47
4.3.3for循環48
4.3.4foreach循環49
4.4跳轉流程50
4.4.1break語句50
4.4.2continue語句51
4.4.3return語句51
4.4.4goto語句52
4.4.5異常處理語句try…catch…finally52
4.5項目案例54
4.5.1學習目標54
4.5.2案例描述54
4.5.3案例要點55
4.5.4案例實施55
4.5.5特別提示56
4.5.6拓展與提高56
本章總結56
習題56
第5章C#面向對象核心語法58
5.1面向對象的概念58
5.1.1對象和類概述58
5.1.2類、方法和變數59
5.1.3構造方法和析構方法61
5.1.4方法重載62
5.1.5this的使用64
5.1.6命名空間66
5.2封裝68
5.2.1封裝概述68
5.2.2屬性與索引器68
5.2.3內部類72
5.2.4分部類72
5.3繼承73
5.3.1繼承的概念735.3.2base的使用75
5.3.3重寫方法與隱藏方法78
5.4多態82
5.4.1多態概念82
5.4.2多態實現的條件83
5.4.3多態性的代碼實現83
5.5項目案例85
5.5.1學習目標85
5.5.2案例描述85
5.5.3案例要點85
5.5.4案例實施85
5.5.5特別提示86
5.5.6拓展與提高86
本章總結87
習題87
第6章C#面向對象高級語法(一)90
6.1靜態變數和方法90
6.1.1靜態變數90
6.1.2靜態方法92
6.2密封類和方法93
6.3抽象類和抽象方法93
6.3.1抽象類93
6.3.2抽象方法94
6.4接口95
6.4.1接口的定義95
6.4.2接口的實現96
6.5項目案例100
6.5.1學習目標100
6.5.2案例描述100
6.5.3案例要點100
6.5.4案例實施100
6.5.5特別提示100
6.5.6拓展與提高100本章總結101
習題101
第7章C#面向對象高級語法(二)103
7.1運算符重載103
7.1.1重載運算符的原則104
7.1.2重載標準運算符104
7.2數組105
7.2.1一維數組106
7.2.2多維數組107
7.2.3數組的使用107
7.3字元串110
7.3.1構造string類字元串110
7.3.2字元串處理111
7.3.3字元串數組的使用113
7.3.4StringBuilder類113
7.4集合115
7.4.1集合與接口115
7.4.2ArrayList類117
7.4.3Queue類119
7.4.4Stack類120
7.4.5Hashtable類121
7.4.6SortedList類123
7.5委託與事件123
7.5.1委託124
7.5.2事件126
7.6泛型130
7.6.1泛型的概念130
7.6.2泛型的聲明和使用130
7.6.3泛型約束132
7.6.4泛型集合132
7.7項目案例133
7.7.1學習目標133
7.7.2案例描述1337.7.3案例要點134
7.7.4案例實施134
7.7.5特別提示135
7.7.6拓展與提高135
本章總結136
習題136
第8章異常處理138
8.1異常處理機制138
8.1.1異常處理基礎138
8.1.2異常基類139
8.2捕獲異常139
8.2.1checked和unchecked語句140
8.2.2捕獲多個異常141
8.3使用finally塊143
8.4拋出異常144
8.5項目案例146
8.5.1學習目標146
8.5.2案例描述147
8.5.3案例要點147
8.5.4案例實施147
8.5.5特別提示148
8.5.6拓展與提高148
本章總結148
習題149
第9章使用WinForm建立用戶圖形界面151
9.1窗體編程概述151
9.1.1窗體定義152
9.1.2創建Windows窗體應用程式152
9.2窗體編程基礎155
9.2.1.NET Framework窗體編程相關基類155
9.2.2通用控制項屬性155
9.2.3回響控制項事件1599.3窗體控制項和組件簡介160
9.3.1常用控制項160
9.3.2選單設計180
9.3.3對話框設計184
9.3.4工具列與狀態欄設計189
9.4項目案例192
9.4.1學習目標192
9.4.2案例描述192
9.4.3案例要點192
9.4.4案例實施192
9.4.5特別提示193
9.4.6拓展與提高194
本章總結194
習題194
第10章多執行緒高級編程195
10.1多執行緒的概念195
10.1.1多執行緒基礎196
10.1.2Thread類197
10.2執行緒狀態200
10.2.1創建和啟動執行緒201
10.2.2執行緒優先權及調度206
10.2.3暫停和中斷執行緒208
10.2.4掛起和喚醒執行緒210
10.2.5銷毀執行緒211
10.3執行緒的同步213
10.3.1並發的問題213
10.3.2使用lock關鍵字215
10.3.3使用Monitor關鍵字216
10.3.4同步問題218
10.4執行緒池219
10.5項目案例222
10.5.1學習目標222
10.5.2案例描述22210.5.3案例要點222
10.5.4案例實施222
10.5.5特別提示225
10.5.6拓展與提高225
本章總結225
習題225
第11章檔案與流227
11.1檔案系統中的和檔案管理227
11.1.1DriveInfo229
11.1.2Directory和DirectoryInfo231
11.1.3File和FileInfo237
11.1.4Path類241
11.2基於流的檔案讀寫操作242
11.2.1流的概念242
11.2.2FileStream類243
11.2.3StreamReader和StreamWriter245
11.2.4StringReader和StringWriter249
11.2.5BinaryReader和BinaryWriter250
11.3XML檔案操作252
11.3.1XML基礎252
11.3.2XML創建254
11.3.3XML數據處理257
11.4項目案例262
11.4.1學習目標262
11.4.2案例描述263
11.4.3案例要點263
11.4.4案例實施263
11.4.5特別提示266
11.4.6拓展與提高266
本章總結266
習題266
第12章TCP/UDP網路編程初步268
12.1網路編程簡介26812.1.1網路基礎概述268
12.1.2TCP/IP270
12.1.3UDP/IP270
12.1.4System.NET和System.NET.Sockets命名空間271
12.2基於TCP/IP的網路編程272
12.2.1TcpClient272
12.2.2TcpListener274
12.2.3客戶機程式276
12.2.4伺服器程式277
12.2.5TCP的網路編程實例280
12.3基於UDP/IP的網路編程281
12.3.1UdpClient281
12.3.2基於UdpClient的編程實例283
12.3.3用UDP實現多播284
12.4項目案例286
12.4.1學習目標286
12.4.2案例描述286
12.4.3案例要點286
12.4.4案例實施286
12.4.5特別提示291
12.4.6拓展與提高291
本章總結291
習題291
第13章ADO.NET資料庫開發293
13.1ADO.NET概述293
13.1.1ADO.NET核心組件294
13.1.2.NET Framework數據提供程式295
13.2連線資料庫295
13.2.1創建School資料庫295
13.2.2構造Connection對象296
13.2.3Connection對象的屬性和方法297
13.2.4連線資料庫的套用298
13.3ADO.NET和資料庫的互動29913.3.1利用Command對象299
13.3.2利用DataReader對象303
13.3.3利用DataAdapter對象306
13.4數據集DataSet307
13.4.1虛擬記憶體資料庫DataSet308
13.4.2虛擬記憶體表DataTable309
13.4.3DataColumn對象310
13.4.4DataRow對象310
13.4.5DataView對象313
13.4.6Constant集合314
13.4.7DataRelation對象315
13.5項目案例315
13.5.1學習目標315
13.5.2案例描述316
13.5.3案例要點316
13.5.4案例實施316
13.5.5特別提示319
13.5.6拓展與提高320
本章總結320
習題320
致謝322