C#程序設計教程
-
【作 者】主編 李祥琴
【I S B N 】978-7-5170-7650-6
【責任編輯】張玉玲
【適用讀者群】本專通用
【出版時間】2019-05-20
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】332
【千字數】508
【印 張】20.75
【定 價】¥48
【叢 書】普通高等教育“十三五”規(guī)劃教材(軟件工程專業(yè))
【備注信息】
簡介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關圖書
本書以Visual Studio 2017為操作平臺,介紹了C#程序設計的方法,全書共13章:C#語言概述、C#程序設計基礎、流程控制、面向對象程序設計基礎、繼承與接口、數組與集合、泛型、委托與事件、Windows窗體應用程序設計、界面設計、線程編程、文件操作、ADO.NET數據訪問技術。
本書內容豐富、由淺入深,特別注重實用性和引導性,書中列舉大量編程實例,突出對應用能力的培養(yǎng),便于初學者學習。
本書可作為高等院校計算機及相關專業(yè)教材,也可作為軟件開發(fā)人員和計算機編程愛好者的參考書。
內容全面、結構完整:知識點介紹由淺入深、循序漸進。
案例典型實用:代碼詳細、步驟清晰。
鞏固提高:習題題型豐富、題量適中。
資源立體配套:提供全部源碼和配套實驗指導。
前 言
C#是微軟公司推出的一種面向對象的、運行于.NET Framework平臺上的編程語言。它繼承了C和C++的強大功能,又吸收了Java等其他語言的優(yōu)點,是一種非常有競爭力的程序設計語言。本書開發(fā)環(huán)境使用Visual Studio 2017,數據庫管理系統使用SQL Server 2012。本書全面細致地介紹了C#程序設計語言的基礎知識,結合大量典型實例和實驗,幫助讀者掌握C#的編程方法和技巧,為今后學習相關的程序設計課程或從事C#編程工作打下堅實的基礎。
本書共分為13章:第1章介紹C#語言的特點、.NET Framework的體系結構、Visual Studio 2017集成開發(fā)環(huán)境和C#應用程序的開發(fā)步驟;第2章介紹C#的數據類型、常量和變量、運算符與表達式;第3章介紹條件選擇控制語句、循環(huán)控制語句、跳轉語句和異常處理;第4章介紹面向對象的基本概念、類、對象、方法、構造函數與析構函數;第5章介紹繼承的定義、派生類的聲明、派生類的初始化順序、覆寫基類方法、虛方法、抽象類和抽象方法、接口的成員與實現;第6章介紹一維數組、二維數組、交錯數組、集合的定義和使用;第7章介紹泛型類、泛型方法、泛型約束和泛型集合;第8章介紹委托的聲明、實例化和調用,以及事件的定義和使用;第9章介紹Windows窗體的屬性、窗體的事件和方法、常用控件、多文檔界面、繼承窗體的創(chuàng)建;第10章介紹菜單的結構、下拉式菜單和彈出式菜單、工具欄和狀態(tài)欄的設計方法、通用對話框;第11章介紹線程的創(chuàng)建、線程的掛起與恢復、線程休眠、阻塞線程、終止線程,以及實現線程同步的方法;第12章介紹文件操作、文件夾操作、使用流對文件進行讀寫;第13章介紹ADO.NET對象模型、Connection對象、Command對象、DataReader對象、DataSet對象、DataAdapter對象,以及常用的數據綁定控件。為了幫助讀者鞏固知識點,每章最后提供了一定數量的練習題供選用。同時,為了方便上機練習,提高程序設計的綜合能力,本書提供了配套的實驗指導,涵蓋了C#的主要內容,讀者可從中國水利水電出版社網站或萬水書苑下載,網址:http://www.waterpub.com.cn/ softdown/和http://www.dgboyong.cn。
本書具有如下特點:
(1)內容全面、結構完整,由淺入深、循序漸進地介紹各個知識點。
(2)精心選擇典型案例,代碼詳細,步驟清晰。
(3)各章都提供了大量習題,幫助讀者鞏固所學知識。
(4)為便于教學,本書提供全部源碼以及配套的實驗指導,可讀性強。
本書由李祥琴任主編,羅傳軍、張牧、楊利、周東來任副主編。其中,荊楚理工學院的李祥琴編寫第1章、第6章至第9章、第13章,荊門市電子政務信息中心的羅傳軍編寫第4章和第10章,荊楚理工學院的張牧編寫第11章和第12章,池州學院的楊利編寫第2章和第3章,荊州職業(yè)技術學院的周東來編寫第5章,全書由李祥琴統稿。
在本書編寫過程中,編者得到了荊楚理工學院、池州學院和荊州職業(yè)技術學院的大力支持和幫助,游明坤、武永成、胡秀、李俊梅、劉珊燕等多位老師提出了寶貴的意見和建議,在此一并表示感謝。
由于時間倉促及編者水平有限,書中難免存在一些疏漏和不足,懇請廣大讀者批評指正。
編 者
2019年3月
前言
第1章 C#語言概述 1
1.1 什么是C#語言 1
1.1.1 C#語言的發(fā)展歷史 1
1.1.2 C#語言的特點 2
1.2 .NET概述 3
1.2.1 .NET平臺 3
1.2.2 什么是.NET Framework 4
1.2.3 .NET Framework體系結構 4
1.2.4 .NET程序執(zhí)行過程 6
1.3 Visual Studio 2017集成開發(fā)環(huán)境 6
1.3.1 Visual Studio 2017的安裝 7
1.3.2 Visual Studio 2017界面介紹 10
1.3.3 Visual C#開發(fā)環(huán)境的配置 11
1.4 C#應用程序 12
1.4.1 控制臺應用程序 13
1.4.2 Windows應用程序 14
1.4.3 Web應用程序 17
習題1 18
第2章 C#程序設計基礎 20
2.1 C#程序的相關元素 20
2.1.1 標識符 20
2.1.2 關鍵字 21
2.1.3 命名空間 21
2.2 數據類型 22
2.2.1 值類型 23
2.2.2 引用類型 28
2.2.3 數據類型轉換 29
2.2.4 .NET支持的方法轉換 32
2.3 常量和變量 33
2.3.1 常量的定義和使用 33
2.3.2 變量的聲明和賦值 34
2.4 運算符與表達式 35
2.4.1 算術運算符 35
2.4.2 關系運算符 36
2.4.3 賦值運算符 36
2.4.4 邏輯運算符 37
2.4.5 位運算符 37
2.4.6 條件運算符 39
2.4.7 其他運算符 39
2.4.8 運算符的優(yōu)先級 40
習題2 41
第3章 流程控制 44
3.1 條件選擇語句 44
3.1.1 if語句 44
3.1.2 switch語句 49
3.2 循環(huán)語句 51
3.2.1 while語句 51
3.2.2 do…while 語句 53
3.2.3 for語句 54
3.2.4 foreach語句 55
3.3 跳轉語句 57
3.3.1 break語句 57
3.3.2 continue語句 58
3.3.3 goto語句 59
3.3.4 return語句 60
3.4 異常處理 61
3.4.1 異常處理語句 62
3.4.2 常用的異常類 66
3.4.3 用戶自定義異常 66
習題3 67
第4章 面向對象程序設計基礎 69
4.1 面向對象概述 69
4.1.1 面向對象的基本概念 69
4.1.2 面向對象的特點 70
4.2 類 71
4.2.1 類的聲明 72
4.2.2 類的成員 73
4.2.3 嵌套類 78
4.2.4 分部類 78
4.3 對象 79
4.3.1 對象的聲明和實例化 79
4.3.2 訪問類的對象 80
4.4 方法 81
4.4.1 方法的聲明和調用 81
4.4.2 靜態(tài)方法和實例方法 82
4.4.3 方法的參數 83
4.4.4 方法的重載 86
4.5 構造函數和析構函數 87
4.5.1 構造函數 88
4.5.2 析構函數 89
習題4 90
第5章 繼承與接口 93
5.1 繼承 93
5.1.1 繼承的定義 93
5.1.2 派生類的聲明 94
5.1.3 派生類的初始化順序 95
5.1.4 密封類 98
5.1.5 靜態(tài)類 99
5.2 多態(tài) 100
5.2.1 虛方法 100
5.2.2 覆寫基類方法 101
5.2.3 隱藏基類方法 102
5.2.4 抽象類和抽象方法 103
5.3 接口 104
5.3.1 接口的定義 105
5.3.2 接口的成員 105
5.3.3 接口的實現 106
5.3.4 接口的派生 108
習題5 110
第6章 數組與集合 112
6.1 數組 112
6.1.1 一維數組 112
6.1.2 二維數組 115
6.1.3 多維數組 117
6.1.4 交錯數組 118
6.1.5 Array類 119
6.2 集合 121
6.2.1 集合接口 121
6.2.2 ArrayList類 122
6.2.3 Queue類 124
6.2.4 Stack類 126
6.2.5 Hashtable類 128
6.2.6 SortedList類 131
習題6 133
第7章 泛型 135
7.1 泛型概述 135
7.1.1 泛型的定義 135
7.1.2 泛型類 135
7.1.3 泛型結構 138
7.1.4 泛型接口 139
7.1.5 泛型方法 140
7.1.6 泛型的繼承 141
7.2 泛型約束 141
7.3 泛型集合 146
7.3.1 List
7.3.2 Queue
7.3.3 Stack
7.3.4 Dictionary
KeyValuePair
7.3.5 SortedList
7.3.6 HashSet
習題7 161
第8章 委托與事件 162
8.1 委托的定義和使用 162
8.1.1 委托的聲明 162
8.1.2 委托的實例化 162
8.1.3 委托的調用 164
8.2 多播委托 165
8.3 匿名方法 167
8.4 委托中的協變和逆變 169
8.5 Lambda表達式 170
8.6 委托的應用 172
8.7 事件 174
8.7.1 事件的概念 174
8.7.2 聲明事件 175
8.7.3 訂閱事件 175
8.7.4 觸發(fā)事件 178
8.7.5 擴展EventArgs類 180
8.7.6 事件訪問器 182
習題8 183
第9章 Windows窗體應用程序設計 185
9.1 窗體設計 185
9.1.1 創(chuàng)建窗體 185
9.1.2 窗體的類型 187
9.1.3 窗體的屬性 187
9.1.4 窗體的方法 189
9.1.5 窗體的事件 191
9.2 常用控件 193
9.2.1 Label控件 193
9.2.2 TextBox控件 195
9.2.3 RichTextBox控件 199
9.2.4 Button控件 203
9.2.5 ListBox控件 204
9.2.6 CheckedListBox控件 207
9.2.7 ComboBox控件 208
9.2.8 RadioButton控件 210
9.2.9 CheckBox控件 212
9.2.10 GroupBox控件 213
9.2.11 TabControl控件 215
9.2.12 PictureBox控件 217
9.2.13 Timer控件 218
9.3 多文檔界面 219
9.4 繼承窗體設計 223
9.4.1 繼承窗體概述 223
9.4.2 創(chuàng)建繼承窗體 224
習題9 225
第10章 界面設計 228
10.1 菜單 228
10.1.1 MenuStrip控件 229
10.1.2 ContexMenuStrip控件 231
10.2 工具欄和狀態(tài)欄 232
10.2.1 ToolStrip控件 232
10.2.2 StatusStrip控件 234
10.3 對話框 237
10.3.1 打開文件對話框 238
10.3.2 保存文件對話框 240
10.3.3 顏色對話框 240
10.3.4 字體對話框 241
10.3.5 打印對話框 241
習題10 244
第11章 線程編程 246
11.1 線程概述 246
11.1.1 單線程簡介 246
11.1.2 多線程簡介 247
11.2 線程控制 248
11.2.1 Thread類 248
11.2.2 線程的創(chuàng)建與啟動 251
11.2.3 線程的掛起與恢復 252
11.2.4 線程休眠 252
11.2.5 阻塞線程 253
11.2.6 終止線程 254
11.3 線程優(yōu)先級 255
11.4 線程的同步 257
11.4.1 使用lock關鍵字 257
11.4.2 使用Monitor類 259
11.4.3 使用Mutex類 260
習題11 261
第12章 文件操作 263
12.1 文件和System.IO模型概述 263
12.1.1 文件類型 263
12.1.2 文件的屬性 264
12.1.3 文件訪問方式與文件流 264
12.1.4 System.IO模型 264
12.2 對文件進行操作 265
12.2.1 File類 265
12.2.2 FileInfo類 267
12.3 對文件夾進行操作 268
12.3.1 Directory類 268
12.3.2 DirectoryInfo類 270
12.4 使用流對文件進行讀寫 271
12.4.1 FileStream類 271
12.4.2 StreamWriter類和StreamReader類 274
12.4.3 BinaryWriter類和BinaryReader類 278
習題12 281
第13章 ADO.NET數據訪問技術 283
13.1 ADO.NET概述 283
13.1.1 ADO.NET簡介 283
13.1.2 ADO.NET數據提供程序 284
13.1.3 ADO.NET對象模型 285
13.2 Connection對象 287
13.2.1 Connection對象的連接字符串 287
13.2.2 Connection對象的創(chuàng)建 288
13.2.3 Connection對象的屬性和方法 289
13.2.4 連接池 291
13.3 Command對象 292
13.3.1 創(chuàng)建Command對象 292
13.3.2 Command對象的屬性 293
13.3.3 Command對象的方法 294
13.4 DataReader對象 299
13.4.1 DataReader對象的屬性和方法 299
13.4.2 創(chuàng)建和使用DataReader對象 300
13.5 DataSet對象 301
13.5.1 DataSet對象概述 301
13.5.2 DataSet對象的屬性和方法 302
13.5.3 DataTable對象 303
13.5.4 DataColumn對象 305
13.5.5 DataRow對象 306
13.5.6 DataView對象 308
13.6 DataAdapter對象 310
13.6.1 DataAdapter對象的屬性和方法 310
13.6.2 創(chuàng)建DataAdapter對象 311
13.6.3 使用DataAdapter對象 312
13.7 數據綁定控件 314
13.7.1 BindingSource控件 314
13.7.2 BindingNavigator控件 317
13.7.3 DataGridView控件 318
習題13 321
參考文獻 324
- 實用運籌學 [主編 邢育紅 于晉臣]
- 電子技術(第二版) [主編 覃愛娜 李飛]
- C程序設計實踐教程 [劉衛(wèi)國]
- C程序設計(慕課版) [劉衛(wèi)國]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 勞動爭議處理實務 [主編 王秀卿 羅靜]
- 工程數學 [主編 郭立娟 王海]
- 語音識別理論與實踐 [主編 莫宏偉]
- 武術基礎教程 [主編 李代勇 謝志民]
- 計算機網絡實訓教程 [主編 張浩軍 趙玉娟]
- 畫法幾何與機械制圖習題集(多學時) [主編 趙軍]
- SwiftUI完全開發(fā) [李智威 著]
- 電工電子技術基礎 [主編 劉 軍 楊國龍 劉天成]
- MySQL數據庫項目式教程 [陳亞峰]
- 機械設計基礎(第二版) [主編 田亞平 李愛姣]
- 畫法幾何與機械制圖 [主編 趙軍]
- C語言程序設計習題與實驗指導(第二版) [主編 甄增榮 張賓]
- C語言程序設計(第二版) [主編 甄增榮 田云霞]
- Unity3D虛擬現實應用開發(fā)實踐 [主 編 劉龍]
- 智能化技術基礎(第三版) [鄧文達 李禮]
- Python程序設計 [主編 姜春磊 陳虹潔]
- C語言程序設計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- 面向對象程序設計 [主編 張勇 張平華 趙小龍]
- Python程序設計基礎及實戰(zhàn) [主編 劉健]
- 網絡營銷 [主編 夏薇薇 劉婷 尚潔]
- C語言程序設計 [姜雪]
- Python程序設計實踐教程 [王鶴琴 蔡正保]
- 電視節(jié)目策劃與制作(微課版) [主 編 黃滴滴]
- 數據庫技術與應用實踐教程(SQL Server 2019) [主 編 嚴暉 周肆清]