新手學C# 3.0(第3版)

新手學C# 3.0(第3版)

《新手學C# 3.0(第3版)》是2010年清華大學出版社出版的圖書,作者是希爾特

基本介紹

  • 中文名:新手學C# 3.0(第3版)
  • 出版時間:2009年11月27日
  • 作者希爾特
  • 出版社清華大學出版社
  • ISBN:9787302214335
  • 定價:69.8元
  • 裝幀:平裝
  • 印次:1-1
內容簡介,目錄,

內容簡介

C#經典名著!也是Wrox紅皮書中最暢銷的品種之一,從第1版開始就名滿天下;其第3版被《中華讀書報》、CSDN、《程式設計師》等機構評選為“2005年最權威的十大IT圖書”之一,並榮獲“2005年度引進版科技類優秀圖書”獎;第4版被多家IT相關機構和媒體聯合評為“2006年最受讀者喜愛的十大技術開發類圖書”。
第6版面向C# 2008和.NET 3.5,在全面展示.NET和C#新特性的同時繼續完善原有的內容,是有一些C#基礎知識的讀者或者想遷移到C#的其他程式設計師全面掌握C# 2008的首選教程。

目錄

第1章C#基礎 1
1.1C#家族樹 2
1.1.1C語言:現代編程的開端 2
1.1.2OOP與C++的產生 2
1.1.3Internet與Java的出現 3
1.1.4C#的產生 4
1.2C#的發展 5
1.3C#與.NETFramework的關係 6
1.3.1.NETFramework的定義 6
1.3.2公共語言運行庫的工作方式 6
1.3.3託管與非託管代碼 7
1.3.4公共語言規範 7
1.4面向對象編程 8
1.4.1封裝 8
1.4.2多態性 9
1.4.3繼承 9
1.5創建、編譯和運行第一個
C#程式 10
1.5.1獲得C#3.0編譯器 11
1.5.2使用VisualStudioIDE 11
1.5.3使用C#命令行編譯器
csc.exe 15
1.6逐行分析第一個樣本程式 16
1.7處理語法錯誤 18
1.8程式變體 19
1.9使用變數 19
1.10double數據類型 22
1.11兩種控制語句 25
1.11.1if語句 25
1.11.2for循環 27
1.12使用代碼塊 29
1.13分號和定位 30
1.14C#關鍵字 32
1.15標識符 33
1.16C#類庫 34
第2章數據類型與運算符簡介 37
2.1數據類型重要的原因 38
2.2C#的值類型 38
2.3浮點類型 41
2.4decimal類型 42
2.5字元 43
2.6bool類型 44
2.7一些輸出選項 45
2.8字面值 48
2.8.1十六進制字面值 49
2.8.2字元轉義序列 49
2.8.3字元串字面值 50
2.9詳細介紹變數 52
2.9.1初始化變數 52
2.9.2動態初始化 53
2.9.3隱式類型變數 53
2.10變數的作用域和生命周期 55
2.11運算符 58
2.12算術運算符 58
2.13關係與邏輯運算符 61
2.14賦值運算符 66
2.14.1複合賦值 66
2.14.2賦值中的類型轉換 67
2.15強制轉換不兼容的類型 68
2.16運算符優先權 70
2.17表達式中的類型轉換 70
第3章程式控制語句 77
3.1從鍵盤輸入字元 78
3.2if語句 79
3.2.1嵌套if 80
3.2.2if-else-if梯次 81
3.3switch語句 82
3.4for循環 89
3.4.1for循環的一些變體 91
3.4.2在for循環內聲明循環
控制變數 94
3.5while循環 95
3.6do-while循環 96
3.7使用break退出循環 101
3.8使用continue 103
3.9goto 104
3.10嵌套循環 109
第4章類、對象及方法 113
4.1類的基礎知識 114
4.1.1類的一般形式 114
4.1.2定義類 115
4.2創建對象的方式 119
4.3引用變數與賦值 120
4.4方法 120
4.4.1向Vehicle類中添加方法 121
4.4.2從方法返回 123
4.4.3返回值 124
4.4.4使用形參 126
4.4.5向Vehicle中添加一個
參數化方法 128
4.5構造函式 135
4.5.1參數化構造函式 136
4.5.2向Vehicle類中添加
一個構造函式 137
4.6再次介紹new運算符 139
4.7垃圾收集與析構函式 139
4.8this關鍵字 140
第5章更多數據類型與運算符 145
5.1數組 146
5.2多維數組 152
5.2.1二維數組 152
5.2.2三維或多維數組 153
5.2.3初始化多維數組 153
5.3交錯數組 154
5.4數組引用賦值 156
5.5使用數組的Length屬性 157
5.6創建隱式類型數組 160
5.7foreach循環 164
5.8字元串 167
5.8.1構造string 167
5.8.2對字元串進行操作 168
5.8.3字元串的數組 170
5.8.4字元串是不可變的 171
5.9按位運算符 172
5.9.1按位AND、OR、XOR
和NOT運算符 173
5.9.2移位運算符 177
5.9.3按位複合賦值 179
5.10“?”運算符 182
第6章詳細介紹方法與類 187
6.1控制對類成員的訪問許可權 188
6.2向方法傳遞對象引用 194
6.3使用ref和out形參 197
6.3.1使用ref 198
6.3.2使用out 199
6.4使用可變數量的實參 202
6.5返回對象 204
6.6方法重載 206
6.7重載構造函式 212
6.8Main()方法 218
6.8.1從Main()中返回值 218
6.8.2向Main()傳遞實參 219
6.9遞歸 221
6.10理解static 222
6.11static構造函式和類 225
第7章運算符重載、索引器及屬性 231
7.1運算符重載 232
7.1.1operator方法的一般形式 232
7.1.2重載二元運算符 233
7.1.3重載一元運算符 235
7.1.4增加靈活性 239
7.1.5重載關係運算符 244
7.1.6關於運算符重載的
提示與限制 246
7.2索引器 247
7.2.1多維索引器 252
7.2.2索引器限制 254
7.3屬性 254
7.3.1自動實現屬性 258
7.3.2屬性限制 259
7.4使用帶存取器的訪問修飾符 259
第8章繼承 271
8.1繼承基礎知識 272
8.2成員訪問和繼承 275
8.3使用受保護訪問 278
8.4構造函式與繼承 279
8.5繼承與名稱隱藏 285
8.6使用base訪問隱藏名稱 286
8.7創建多層層次結構 291
8.8何時調用構造函式 294
8.9基類引用和派生對象 295
8.10虛方法與重寫 298
8.10.1重寫方法的原因 301
8.10.2套用虛方法 301
8.11使用抽象類 304
8.12使用sealed關鍵字
防止繼承 308
8.13object類 309
第9章接口、結構與枚舉 315
9.1接口 316
9.2使用接口引用 320
9.3接口屬性 328
9.4接口索引器 330
9.5接口可以繼承 332
9.6顯式實現 333
9.7結構 336
9.8枚舉 338
9.8.1初始化枚舉 340
9.8.2指定枚舉的底層類型 340
第10章異常處理 343
10.1System.Exception類 344
10.2異常處理基礎知識 344
10.2.1使用try和catch 344
10.2.2一個簡單的異常示例 345
10.2.3第二個異常示例 346
10.3未捕獲異常的後果 347
10.4異常有助於適當地
處理錯誤 349
10.5使用多個catch子句 350
10.6捕獲所有異常 351
10.7try塊可以嵌套 352
10.8拋出異常 353
10.9使用finally 355
10.10詳述異常 357
10.11派生異常類 359
10.12捕獲派生類異常 361
10.13使用checked和unchecked 366
第11章使用I/O 371
11.1構建在流基礎上的C#I/O 372
11.1.1位元組流與字元流 372
11.1.2預先定義的流 372
11.2各種流類 372
11.2.1Stream類 373
11.2.2位元組流類 374
11.2.3字元流包裝器類 374
11.2.4二進制流 376
11.3控制台I/O 376
11.3.1讀取控制台輸入 376
11.3.2編寫控制台輸出 378
11.4FileStream和面向位元組
的檔案I/O 379
11.4.1打開和關閉檔案 380
11.4.2從FileStream中
讀取位元組 382
11.4.3寫人檔案 383
11.5基於字元的檔案I/O 385
11.5.1使用StreamWriter 386
11.5.2使用StreamReader 388
11.6重定向標準流 389
11.7讀、寫二進制數據 393
11.7.1BinaryWriter 393
11.7.2BinaryReader 394
11.7.3說明二進制I/O 395
11.8隨機訪問檔案 397
11.9將數值字元串轉換成它們
的內部表示 399
第12章委託、事件與名稱空間 411
12.1委託 412
12.1.1使用實例方法作為委託 415
12.1.2多播 416
12.1.3為什麼使用委託 418
12.2匿名方法 419
12.3事件 422
12.3.1多播事件示例 424
12.3.2通過事件使用匿名方法 426
12.4名稱空間 428
12.4.1聲明名稱空間 428
12.4.2using 431
12.4.3using的第二種形式 432
12.4.4名稱空間可以累加 433
12.4.5名稱空間可以嵌套 434
12.4.6全局名稱空間 436
第13章泛型 441
13.1泛型的概念 442
13.2泛型的基本原理 442
13.2.1基於類型實參的不同
泛型類型 445
13.2.2泛型提高類型安全性 445
13.3包含兩個類型形參
的泛型類 448
13.4約束類型 450
13.4.1使用基類約束 451
13.4.2使用約束在兩個類型
形參之間建立關係 453
13.4.3使用接口約束 454
13.4.4使用new()構造
函式約束 456
13.4.5引用類型約束和值
類型約束 458
13.4.6使用多種約束 460
13.5創建類型形參的默認值 461
13.6泛型結構 463
13.7泛型方法 464
13.7.1使用顯式類型實參調用
泛型方法 467
13.7.2在泛型方法中使用約束 467
13.8泛型委託 468
13.9泛型接口 470
第14章LINQ簡介 481
14.1LINQ的定義 482
14.2LINQ的基本原理 483
14.2.1簡單查詢 483
14.2.2查詢可以多次執行 485
14.2.3查詢中的數據類型
如何關聯 486
14.2.4查詢的一般形式 487
14.3使用where過濾值 488
14.4使用orderby給結果排序 490
14.5仔細分析select 491
14.6使用group分組結果 494
14.7使用into創建繼續 496
14.8使用let在查詢中創建變數 498
14.9使用join連線兩個序列 499
14.10匿名類型和對象初始化器 502
14.11創建分組連線 505
14.12查詢方法和拉姆達表達式 508
14.12.1基本查詢方法 508
14.12.2拉姆達表達式 509
14.12.3使用查詢方法
創建查詢 510
14.12.4更多與查詢相關的
擴展方法 512
14.12.5延遲查詢執行和即時
查詢執行 515
14.13進一步研究擴展方法 516
14.14進一步研究拉姆達表達式 518
14.14.1表達式拉姆達 518
14.14.2語句拉姆達 520
第15章預處理程式、RTTI、可空
類型和其他高級主題 525
15.1預處理程式 526
15.1.1#define 526
15.1.2#if和#endif 526
15.1.3#else和#elif 528
15.1.4#undef 530
15.1.5#error 531
15.1.6#warning 531
15.1.7#line 531
15.1.8#region和#endregion 531
15.1.9#pragma 532
15.2運行時類型標識 532
15.2.1使用is測試類型 532
15.2.2使用as 533
15.2.3使用typeof 534
15.3可空類型 534
15.3.1“??”運算符 536
15.3.2可空對象與關係和
邏輯運算符 537
15.4不安全代碼 538
15.4.1指針簡介 538
15.4.2不安全的關鍵字 540
15.4.3使用fixed 541
15.5屬性 542
15.5.1Conditional屬性 543
15.5.2Obsolete屬性 544
15.6轉換運算符 545
15.7集合簡介 548
15.7.1集合的基礎知識 549
15.7.2集合示例研究:創建
一個動態數組 550
15.8其他關鍵字 555
15.8.1internal訪問修飾符 555
15.8.2sizeof 556
15.8.3lock 556
15.8.4readonly 556
15.8.5stackalloc 557
15.8.6using語句 557
15.8.7const和volatile 558
15.8.8partial修飾符 558
15.8.9yield 561
15.8.10extern 561
15.9展望 561
附錄A自測題答案 563

相關詞條

熱門詞條

聯絡我們