《C#入門與提高》
《C#入門與提高》
GITHUB: https://github.com/jash-git/Jash-good-idea-20220101-001/tree/main/C%23
扉頁; 1
內 容 簡 介; 2
前 言; 3
目 錄; 5
第1章 Visual Studio 2005概述; 14
1.1 C\#基礎知識; 14
1.1.1 C\#簡介; 14
1.1.2 .NET Framework平臺體系結構; 14
1.1.3 物件導向的程式設計方法; 14
1.2 Visual Studio 2005的新特性; 15
1.3 安裝Visual Studio 2005; 16
1.4 IDE介紹; 16
1.4.1 開始頁面; 16
1.4.2 解決方案資源管理器; 17
1.4.3 功能表列; 18
1.4.4 工具列; 19
1.4.5 工具箱; 19
1.4.6 代碼編輯器; 20
1.4.7 對象流覽器; 21
1.4.8 “屬性”面板; 21
1.4.9 “命令”窗口; 22
1.4.10 “即時”窗口; 22
1.4.11 “任務清單”窗口; 22
1.5 使用命名空間; 22
1.6 Main方法; 23
1.7 使用幫助; 24
1.8 專案實踐; 24
1.9 複習與提示; 25
1.10 上機實驗; 25
第2章 變數、操作符和運算式; 26
2.1 語句; 26
2.2 程式碼的注釋; 26
2.3 使用識別字; 26
2.4 變數和常量; 27
2.4.1 變數; 27
2.4.2 常量; 28
2.5 資料類型; 28
2.5.1 數值型別和參考類型的區別; 28
2.5.2 基底資料型別; 28
2.5.3 參考類型; 29
2.6 運算子與運算式類型; 31
2.6.1 運算子的分類; 31
2.6.2 運算子的優先順序; 32
2.7 專案實踐; 33
2.8 複習與提示; 34
2.9 習題與上機實驗; 34
習題; 34
上機實驗; 35
[實驗1] 求矩形的周長和面積; 35
[實驗2] 判斷某年是否為閏年; 36
第3章 方法; 37
3.1 聲明方法; 37
3.1.1 聲明方法的語法格式; 37
3.1.2 return語句; 37
3.2 調用方法; 38
3.2.1 ref關鍵字; 38
3.2.2 創建out參數; 38
3.3 運用作用域; 39
3.4 方法的重載; 39
3.5 專案實踐; 40
3.6 複習與提示; 41
3.7 習題與上機實驗; 41
習題; 41
上機實驗; 42
[實驗1] 給三個整數排序並求其和及平均值; 42
[實驗2] 求n!的值; 43
第4章 結構化程式設計; 44
4.1 順序結構程式設計; 44
4.2 輸入和輸出; 45
4.3 選擇結構程式設計; 45
4.4 迴圈結構程式設計; 46
4.5 轉移語句; 47
4.6 專案實踐; 47
4.7 複習與提示; 50
4.8 習題; 50
第5章 枚舉和結構; 52
5.1 枚舉; 52
5.1.1 定義枚舉; 52
5.1.2 使用枚舉; 53
5.2 結構; 53
5.2.1 定義結構; 53
5.2.2 使用結構; 54
5.3 專案實踐; 54
5.4 複習與提示; 56
5.5 習題與上機實驗; 56
習題; 56
上機實驗; 57
[實驗] 求矩形的周長和面積; 57
第6章 陣列與集合; 58
6.1 陣列; 58
6.2 集合; 61
6.3 複習與提示; 64
6.4 習題; 64
第7章 物件導向程式設計; 65
7.1 類和對象; 65
7.1.1 類的定義; 65
7.1.2 聲明和使用物件; 66
7.2 存取控制; 66
7.3 屬性; 66
7.3.1 定義屬性; 66
7.3.2 使用屬性; 67
7.4 方法; 68
7.5 構造函數; 68
7.5.1 聲明構造函數; 68
7.5.2 重載構造函數; 69
7.6 析構函數; 69
7.7 靜態成員; 70
7.8 Visual Studio .NET中的OOP工具; 70
7.9 常用類操作和資料處理; 71
7.10 專案實踐; 73
7.11 複習與提示; 75
7.12 習題; 75
第8章 物件導向程式設計進階; 78
8.1 封裝、繼承和多態; 78
8.1.1 封裝; 78
8.1.2 繼承; 78
8.1.3 多態性; 80
8.2 介面; 81
8.3 專案實踐; 82
8.4 複習與提示; 87
8.5 習題與上機實驗; 87
習題; 87
上機實驗; 89
[實驗] 求三角形的面積; 89
第9章 表單; 90
9.1 創建表單; 90
9.1.1 使用新建專案範本創建表單; 90
9.1.2 使用添加專案範本創建表單; 91
9.2 設置表單內容; 91
9.3 表單的常用事件; 92
9.4 表單的常用方法; 92
9.5 專案實踐; 93
9.6 複習與提示; 94
9.7 習題與上機實驗; 94
習題; 94
上機實驗; 94
[實驗] 設計有兩個表單的應用程式; 94
第10章 控制項; 95
10.1 Windows表單介面設計; 95
10.1.1 在表單中添加控制項; 95
10.1.2 修改控制項屬性; 96
10.1.3 滑鼠事件與鍵盤事件; 96
10.2 常用文本編輯控制項; 97
10.2.1 標籤控制項; 97
10.2.2 文字方塊控制項; 98
10.3 按鈕類控制項; 98
10.3.1 按鈕控制項; 98
10.3.2 選項按鈕; 99
10.3.3 核取方塊控制項; 99
10.4 下拉式方塊控制項; 99
10.4.1 清單方塊控制項與複選清單方塊; 100
10.4.2 下拉式方塊控制項; 101
10.5 滾動類控制項; 101
10.5.1 水準捲軸控制項與垂直捲動條控制項; 101
10.5.2 進度條控制項; 102
10.6 清單視圖控制項和樹狀檢視控制項; 102
10.6.1 清單視圖控制項; 102
10.6.2 樹狀檢視控制項; 104
10.7 圖片框控制項和圖像清單控制項; 105
10.7.1 圖片框控制項; 105
10.7.2 圖像清單控制項; 105
10.8 計時器控制項; 106
10.9 專案實踐; 107
10.10 複習與提示; 119
10.11 習題與上機實驗; 119
習題; 119
上機實驗; 120
[實驗1] 設計一個能進行加減乘除運算的應用程式; 120
[實驗2] 設計一個收集個人資訊的應用程式; 120
[實驗3] 設計一個能進行專業管理的應用程式; 121
第11章 使用功能表和對話方塊; 122
11.1 菜單; 122
11.1.1 功能表控制項與快顯功能表控制項; 122
11.1.2 工具列控制項和狀態列控制項; 124
11.2 設計MDI表單; 127
11.2.1 MDI主表單和子表單; 127
11.2.2 MDI表單的操作; 128
11.3 通用對話方塊控制項; 129
11.3.1 檔對話方塊控制項; 129
11.3.2 字體和顏色對話方塊控制項; 131
11.4 使用印表機; 132
11.4.1 列印流程; 132
11.4.2 列印文本的實現; 133
11.4.3 預覽列印的實現; 133
11.5 專案實踐; 134
11.6 複習與提示; 137
11.7 習題與上機實驗; 137
習題; 137
上機實驗; 138
[實驗1] 設計一個簡單的MDI的應用程式; 138
[實驗2] 設計一個簡單的MDI文字編輯器; 138
第12章 調試與異常處理; 140
12.1 程式調試; 140
12.1.1 調試的理解; 140
12.1.2 調試的工具; 140
12.1.3 中斷模式下的調試; 141
12.2 異常處理; 142
12.2.1 異常及異常處理; 142
12.2.2 結構化異常處理; 142
12.2.3 引發異常; 143
12.3 專案實踐; 143
12.4 複習與提示; 145
12.5 習題與上機實驗; 145
習題; 145
上機實驗; 146
[實驗] 調試修改project10-1中的錯誤; 146
第13章 流和檔輸入/輸出操作; 147
13.1 Stream類; 147
13.2 FileStream類; 147
13.2.1 檔位置; 147
13.2.2 讀取數據; 148
13.2.3 寫入資料; 149
13.3 用於讀寫資料的類; 150
13.3.1 讀寫二進位檔案的操作; 150
13.3.2 讀寫文字檔處理; 151
13.4 文本與剪貼板之間的交互; 153
13.5 檔和目錄類; 154
13.5.1 文件類; 154
13.5.2 目錄類; 155
13.6 專案實踐; 156
13.7 複習與提示; 157
13.8 習題與上機實驗; 157
習題; 157
上機實驗; 157
[實驗1] 用StreamReader/類、StreamWriter類和File類處理文件; 157
[實驗2] 使用FileInfo類實現檔解除隱藏、隱藏、複製和刪除; 158
第14章 圖形圖像與多媒體處理; 159
14.1 GDI+概述; 159
14.2 GDI+使用的坐標系; 159
14.2.1 Point; 159
14.2.2 Size; 161
14.2.3 Rectangle; 161
14.3 Graphics對象; 161
14.4 Paint事件; 161
14.5 顏色; 162
14.6 字體; 162
14.7 畫筆; 163
14.8 畫刷; 164
14.9 顯示圖像; 165
14.10 圖形圖像與剪貼板的交互作用; 171
14.11 使用媒體播放控制項; 172
14.12 專案實踐; 173
14.13 複習與提示; 174
14.14 習題與上機實驗; 175
習題; 175
上機實驗; 175
[實驗] 製作個人畫圖板; 175
第15章 資料庫技術; 176
15.1 常用資料庫; 176
15.1.1 Access資料庫; 176
15.1.2 SQL Server資料庫; 177
15.2 資料庫基礎知識; 177
15.2.1 表; 177
15.2.2 視圖; 178
15.2.3 存儲過程; 178
15.2.4 索引; 179
15.3 ADO.NET概述; 179
15.3.1 ADO與ADO.NET的關係; 179
15.3.2 .NET Framework資料提供程式; 180
15.3.3 .NET Framework資料提供程式的核心物件; 180
15.3.4 System.Data命名空間; 181
15.4 連接資料庫; 181
15.4.1 SqlConnection類; 182
15.4.2 連接字串; 182
15.4.3 創建SQL Server連接; 182
15.4.4 斷開SQL Server連接; 182
15.4.5 OleDbConnection類; 183
15.5 資料命令; 184
15.5.1 查詢記錄; 184
15.5.2 插入記錄; 185
15.5.3 修改記錄; 187
15.5.4 刪除記錄; 188
15.6 SqlDataReader對象; 189
15.7 使用可視控制項訪問ADO.NET資料庫; 190
15.8 定義DataSet類; 192
15.9 DataSet、DataTable和TableAdapter對象; 193
15.9.1 流覽資料; 194
15.10 數據綁定; 194
15.10.1 簡單的資料綁定; 195
15.10.2 複雜的資料綁定; 196
15.11 複習與提示; 198
15.12 習題; 198
第16章 使用ADO.NET訪問資料庫; 200
16.1 ADO.NET體系結構; 200
16.2 資料適配器; 201
16.3 資料集; 202
16.4 DataTable類; 202
16.4.1 DataTable類的常用屬性和方法; 203
16.4.2 創建資料表; 203
16.4.3 定義資料表結構; 204
16.4.4 操作資料表中的資料; 204
16.5 DataRelation類; 207
16.6 CurrencyManager和BindingContext類; 207
16.7 複習與提示; 208
16.8 習題; 208
第17章 網路程式設計; 210
17.1 Socket的基本概念; 210
17.1.1 Socket簡介; 210
17.1.2 Socket程式設計原理; 210
17.2 TCP/IP網路模型; 213
17.3 獲得網路端點; 214
17.3.1 IPEndPoint類; 214
17.3.2 IPHostEntry類; 215
17.4 網路流; 216
17.5 Socket通信; 217
17.6 使用者資料包通訊協定; 219
17.7 傳輸控制協議; 221
17.7.1 TcpListener類; 221
17.7.2 TcpClient類; 221
17.8 網路聊天程式; 221
17.9 電子郵件收發程式; 226
17.9.1 與電子郵件系統相關的協定; 226
17.9.2 Microsoft MAPI Control控制項; 227
17.9.3 使用POP3協定接收郵件; 227
17.10 專案實踐; 228
17.11 複習與提示; 231
17.12 習題與上機實驗; 231
習題; 231
上機實驗; 232
[實驗1] TCP服務端的實現; 232
[實驗2] 創建簡單的聊天程式; 232
第18章 多執行緒技術; 233
18.1 概述; 233
18.2 System.Threading命名空間; 234
18.3 Thread類; 234
18.4 Monitor類; 235
18.5 Mutex類; 237
18.6 ReaderWriterLock類; 238
18.7 ThreadPool類; 242
18.8 WaitHandle類; 244
18.9 AutoResetEvent類; 244
18.10 Timer類; 247
18.11 專案實踐; 248
18.12 複習與提示; 251
18.13 習題與上機實驗; 251
習題; 251
上機實驗; 252
[實驗1] Thread類的方法的使用; 252
[實驗2] 滾動字幕的實現; 252
第19章 部署應用程式; 253
19.1 使用安裝專案部署Windows應用程式; 253
19.2 專案實踐; 254
19.3 複習與提示; 257