C#高級編程(第3版)

C#高級編程(第3版)

《C#高級編程(第3版)》是2006年4月18日清華大學出版社出版的圖書,作者是羅賓遜。

基本介紹

  • 書名:C#高級編程(第3版)
  • 作者:羅賓遜
  • ISBN:9787302101994
  • 定價:128元
  • 出版社:清華大學出版社
  • 出版時間:2006-4-18
  • 裝幀:平裝
  • 開本:16開
圖書簡介,圖書目錄,

圖書簡介

C#與.NET為在Windows平台上編程提供了一個全新的開發環境,在此環境中幾乎可以開發出所有基於Windows和Web的應用程式。本書全面介紹了C#的編程知識,同時提供了理解.NET體系結構工作原理所必需的背景知識,新增了應用程式的部署和本地化等內容。本書是開發人員必備的C#參考資料,是C#和.NET用戶的良師益友。通過對本書的學習,您將對C#語言的各個方面有深入細緻的理解,能夠在.NET環境中套用C#,構建Windows窗體,用ADO.NET訪問資料庫,用ASP.NET編寫組件,利用.NET為COM和COM+提供支持等。

圖書目錄

第1章.NET體系結構 1
1.1C#與.NET的關係 1
1.2公共語言運行庫 1
1.3中間語言 4
1.3.1面向對象和接口的支持 5
1.3.2值類型和引用類型 6
1.3.3強數據類型 6
1.3.4通過異常處理錯誤 12
1.3.5特性的使用 12
1.4程式集 12
1.4.1私有程式集 13
1.4.2共享程式集 14
1.4.3反射 14
1.5.NETFramework類 14
1.6用C#創建.NET應用程式 16
1.6.1創建ASP.NET應用程式 16
1.6.2創建Windows窗體 18
1.6.3Windows服務 18
1.7C#在.NET企業體系結構中的作用 18
1.8小結 20
第2章C#基礎 21
2.1引言 21
2.2第一個C#程式 22
2.2.1代碼 22
2.2.2編譯並運行程式 22
2.2.3詳細介紹 23
2.3變數 25
2.3.1變數的初始化 26
2.3.2變數的作用域 26
2.3.3常量 29
2.4預定義數據類型 30
2.4.1值類型和引用類型 30
2.4.2CTS類型 31
2.4.3預定義的值類型 32
2.4.4預定義的引用類型 35
2.5流控制 37
2.5.1條件語句 37
2.5.2循環 41
2.5.3跳轉語句 44
2.6枚舉 45
2.7數組 47
2.8命名空間 48
2.8.1using語句 49
2.8.2命名空間的別名 50
2.9Main()方法 51
2.9.1多個Main()方法 51
2.9.2給Main()方法傳送參數 52
2.10有關編譯C#檔案的更多內容 53
2.11控制台I/O 55
2.12使用注釋 57
2.12.1源檔案中的內部注釋 57
2.12.2XML文檔說明 57
2.13C#預處理器指令 59
2.13.1#define和#undef 60
2.13.2#if,#elif,#else和#endif 60
2.13.3#warning和#error 61
2.13.4#region和#endregion 62
2.13.5#line 62
2.14C#編程規則 62
2.14.1用於標識符的規則 63
2.14.2用法約定 64
2.15小結 69
第3章對象和類型 70
3.1類和結構 70
3.2類成員 71
3.2.1數據成員 71
3.2.2函式成員 72
3.2.3隻讀欄位 86
3.3結構 87
3.3.1結構是值類型 88
3.3.2結構和繼承 89
3.3.3結構的構造函式 89
3.4Object類 90
3.4.1System.Object方法 90
3.4.2ToString()方法 91
3.5小結 93
第4章繼承 94
4.1繼承的類型 94
4.1.1實現繼承和接口繼承 94
4.1.2多重繼承 95
4.1.3結構和類 95
4.2實現的繼承 95
4.2.1虛方法 96
4.2.2隱藏方法 97
4.2.3調用函式的基礎版本 98
4.2.4抽象類和抽象函式 99
4.2.5密封類和密封方法 100
4.2.6派生類的構造函式 101
4.3修飾符 105
4.3.1可見性修飾符 105
4.3.2其他修飾符 106
4.4接口 107
4.4.1定義和實現接口 108
4.4.2派生的接口 112
4.5小結 114
第5章運算符和類型強制轉換 115
5.1運算符 115
5.1.1運算符的簡化操作 116
5.1.2三元運算符 117
5.1.3checked和unchecked運算符 118
5.1.4is運算符 119
5.1.5as運算符 119
5.1.6sizeof運算符 119
5.1.7typeof運算符 119
5.1.8運算符的優先權 120
5.2類型的安全性 120
5.2.1類型轉換 121
5.2.2裝箱和取消裝箱 124
5.3對象的相等比較 125
5.3.1引用類型的相等比較 125
5.3.2ReferenceEquals()方法 125
5.3.3虛擬的Equals()方法 125
5.3.4靜態的Equals()方法 125
5.3.5比較運算符== 126
5.3.6值類型的相等比較 126
5.4運算符重載 126
5.4.1運算符的工作方式 127
5.4.2運算符重載的示例:Vector結構 128
5.5用戶定義的數據類型轉換 135
5.5.1執行用戶定義的類型轉換 137
5.5.2多重數據類型轉換 143
5.6小結 147
第6章委託和事件 148
6.1委託 148
6.1.1在C#中使用委託 149
6.1.2簡單的委託示例 153
6.1.3BubbleSorter示例 154
6.1.4多播委託 157
6.2事件 160
6.2.1從客戶的角度討論事件 160
6.2.2生成事件 162
6.3小結 166
第7章記憶體管理和指針 167
7.1後台記憶體管理 167
7.1.1值數據類型 167
7.1.2引用數據類型 169
7.1.3垃圾收集 171
7.2釋放未託管的資源 172
7.2.1析構函式 172
7.2.2IDisposable接口 173
7.2.3實現IDisposable接口和析構函式 175
7.3不安全的代碼 176
7.3.1指針 176
7.3.2使用指針最佳化性能 191
7.4小結 194
第8章字元串和正則表達式 195
8.1System.String類 195
8.1.1創建字元串 196
8.1.2格式化字元串 200
8.2正則表達式 206
8.2.1正則表達式概述 206
8.2.2RegularExpressionsPlayaround示例 207
8.2.3顯示結果 209
8.2.4匹配、組合和捕獲 211
8.3小結 212
第9章集合 213
9.1對象組 213
9.1.1數組列表 213
9.1.2集合 215
9.1.3字典 219
9.2小結 228
第10章反射 229
10.1.1編寫定製特性 230
10.1.2定製特性示例WhatsNewAttributes 233
10.2反射 237
10.2.1System.Type類 237
10.2.2TypeView示例 239
10.2.3Assembly類 241
10.2.4完成WhatsNewAttributes示例 243
10.3小結 247
第11章錯誤和異常 248
11.1錯誤和異常處理 248
11.1.1異常類 248
11.1.2捕獲異常 250
11.1.3用戶定義的異常類 259
11.2小結 267
第12章VisualStudio.NET 268
12.1使用VisualStudio.NET2003 268
12.1.1創建項目 271
12.1.2解決方案和項目 276
12.1.3Windows應用程式代碼 279
12.1.4讀取VisualStudio6項目 279
12.1.5項目的瀏覽和編碼 280
12.1.6生成項目 289
12.1.7調試 293
12.2其他.NET工具 295
12.2.1ASP.NETWebMatrixProject 295
12.2.2WinCV 296
12.3小結 297
第13章程式集 298
13.1程式集的含義 298
13.1.1DLL-Hell的解決方案 299
13.1.2程式集的特性 299
13.1.3應用程式域和程式集 300
13.2程式集的結構 303
13.2.1程式集的清單 303
13.2.2命名空間、程式集和組件 304
13.2.3私有程式集和共享程式集 304
13.2.4查看程式集 304
13.2.5構建程式集 305
13.3跨語言支持 309
13.3.1CTS和CLS 310
13.3.2語言無關性 311
13.3.3CLS要求 320
13.4全局程式集快取 321
13.4.1本機圖像生成器 322
13.4.2全局程式集快取查看器 322
13.4.3全局程式集快取工具(gacutil.exe) 324
13.5創建共享程式集 324
13.5.1共享程式集名 324
13.5.2創建共享程式集 326
13.6配置 331
13.6.1配置類別 331
13.6.2版本問題 332
13.6.3配置目錄 341
13.7小結 343
第14章.NET的安全性 344
14.1代碼訪問的安全性 344
14.1.1代碼組 345
14.1.2代碼訪問許可權和許可權集 351
14.1.3策略的級別:Machine、User和Enterprise 355
14.2對Framework中安全性的支持 357
14.2.1要求許可權 358
14.2.2請求許可權 359
14.2.3隱式的許可權 361
14.2.4拒絕許可權 362
14.2.5斷言許可權 363
14.2.6創建代碼訪問許可權 365
14.2.7聲明的安全性 365
14.3基於角色的安全性 366
14.3.1Principal 366
14.3.2WindowsPrincipal 367
14.3.3角色 368
14.3.4聲明基於角色的安全性 369
14.4安全策略的管理 370
14.4.1安全配置檔案 370
14.4.2代碼組和許可權的管理 373
14.4.3安全性的啟用和禁用 374
14.4.4重置安全策略 374
14.4.5代碼組的創建 374
14.4.6代碼組的刪除 375
14.4.7代碼組許可權的更改 375
14.4.8許可權集的創建和套用 376
14.4.9使用強名稱發布代碼 378
14.4.10使用證書發布代碼 381
14.4.11區域的管理 386
14.5小結 387
第15章執行緒 389
15.1執行緒 389
15.2多執行緒應用程式 390
15.3執行緒的處理 391
15.4ThreadPlayaround示例 393
15.5執行緒的優先權 397
15.6同步 398
15.6.1同步的含義 398
15.6.2同步問題 399
15.7小結 402
第16章使用.NETRemoting的分散式應用程式 403
16.1.NETRemoting的含義 404
16.1.1應用程式類型和協定 404
16.1.2CLRObjectRemoting 405
16.2.NETRemoting概述 405
16.3環境 407
16.3.1激活 408
16.3.2特性和屬性 408
16.3.3環境之間的通信 409
16.4遠程對象、客戶機和伺服器 409
16.4.1遠程對象 409
16.4.2簡單的伺服器 410
16.4.3簡單的客戶機 411
16.5.NETRemoting體系結構 413
16.5.1信道 413
16.5.2格式標識符 416
16.5.3ChannelServices和RemotingConfiguration 417
16.5.4對象的激活 418
16.5.5訊息接收器 422
16.5.6在遠程方法中傳遞對象 423
16.5.7生存期管理 427
16.6.NETRemoting的其他特性 430
16.6.1配置檔案 430
16.6.2駐留應用程式 440
16.6.3類、接口和Soapsuds 441
16.6.4異步遠程調用 443
16.6.5遠程調用和事件 445
16.6.6調用環境 451
16.7小結 453
第17章本地化 454
17.1System.Globalization命名空間 454
17.1.1Unicode問題 454
17.1.2文化和區域 455
17.1.3使用文化 459
17.1.4排序 464
17.2資源 465
17.2.1創建資源檔案 466
17.2.2ResGen 466
17.2.3ResourceWriter 466
17.2.4使用資源檔案 467
17.2.5System.Resources命名空間 470
17.3使用VisualStudio.NET的本地化示例 470
17.3.1外包翻譯 476
17.3.2編程修改文化 476
17.3.3使用二進制資源檔案 478
17.3.4使用XML資源檔案 479
17.3.5資源的自動回退 480
17.4ASP.NET應用程式的國際化和本地化 481
17.5定製的資源讀取器 482
17.5.1創建DatabaseResourceReader類 483
17.5.2創建DatabaseResourceSet類 484
17.5.3創建DatabaseResourceManager類 485
17.5.4DatabaseResourceReader的客戶應用程式 486
17.6小結 486
第18章部署 487
18.1部署的設計 487
18.2部署選項 487
18.2.1xcopy實用工具 487
18.2.2複製項目 488
18.2.3部署項目 488
18.3部署的要求 488
18.4簡單的部署 489
18.4.1xcopy部署 489
18.4.2xcopy部置和Web應用程式 490
18.4.3複製項目 491
18.5Installer項目 492
18.5.1WindowsInstaller 493
18.5.2創建安裝程式 493
18.5.3高級選項 502
18.6小結 508
第19章Windows窗體 509
19.1創建Windows窗體應用程式 509
19.2Control類 515
19.2.1大小和位置 516
19.2.2外觀 516
19.2.3用戶互動操作 516
19.2.4Windows功能 517
19.2.5雜項功能 518
19.2.6類層次結構 518
19.3標準控制項和組件 519
19.3.1Button控制項 520
19.3.2CheckBox控制項 521
19.3.3ComboBox控制項與ListBox控制項 521
19.3.4DateTimePicker控制項 522
19.3.5ErrorProvider組件 522
19.3.6HelpProvider組件 524
19.3.7ImageList組件 524
19.3.8Label控制項 524
19.3.9ListView控制項 525
19.3.10Panel控制項 527
19.3.11PictureBox控制項 527
19.3.12ProgressBar控制項 527
19.3.13RadioButton控制項 528
19.3.14TextBox控制項與RichTextBox控制項 528
19.3.15Splitter控制項 529
19.3.16StatusBar控制項 529
19.3.17TabControl控制項和TabPages控制項 530
19.3.18Menu控制項 530
19.3.19ToolBar控制項 532
19.4窗體 534
19.4.1Form類 534
19.4.2多文檔界面 542
19.4.3定製控制項 545
19.5小結 557
第20章使用GDI+繪圖 558
20.1理解繪圖規則 558
20.1.1GDI和GDI+ 558
20.1.2繪製圖形 560
20.1.3使用OnPaint()繪製圖形 563
20.1.4使用剪下區域 564
20.2測量坐標和區域 565
20.2.1Point和PointF結構 566
20.2.2Size和SizeF結構 567
20.2.3Rectangle和RectangleF結構 568
20.2.4Region 569
20.3調試須知 570
20.4繪製可滾動的視窗 571
20.5顏色 577
20.5.1紅綠藍(RGB)值 577
20.5.2命名的顏色 578
20.5.3圖形顯示模式和安全的調色板 578
20.5.4安全調色板 579
20.6畫筆和鋼筆 579
20.6.1畫筆 580
20.6.2鋼筆 580
20.7繪製圖形和線條 581
20.8顯示圖像 583
20.9繪製文本 586
20.10字型和字型系列 588
20.11示例:枚舉字型系列 590
20.12編輯文本文檔:CapsEditor示例 592
20.12.1Invalidate()方法 596
20.12.2計算項和文檔的大小 597
20.12.3OnPaint() 599
20.12.4坐標轉換 600
20.12.5回響用戶的輸入 602
20.13列印 605
20.14小結 610
第21章.NET數據訪問 612
21.1ADO.NET概述 612
21.1.1命名空間 613
21.1.2共享類 613
21.1.3資料庫特定的類 613
21.2使用資料庫連線 614
21.2.1高效地使用連線 615
21.2.2事務處理 618
21.3命令 619
21.3.1執行命令 620
21.3.2調用存儲過程 624
21.4快速數據訪問:數據讀取器 627
21.5管理數據和關係:DataSet類 630
21.5.1數據表 630
21.5.2數據列 631
21.5.3數據關係 636
21.5.4數據約束 638
21.6XML模式 640
21.7填充數據集 647
21.7.1用數據適配器來填充DataSet 647
21.7.2從XML中給數據集填充數據 649
21.8保存對數據集的修改 649
21.8.1通過數據適配器進行更新 649
21.8.2寫入XML輸出結果 652
21.9使用ADO.NET 654
21.9.1分層開發 654
21.9.2SQLServer的鍵生成 655
21.9.3命名約定 657
21.10小結 658
第22章查看.NET數據 660
22.1DataGrid控制項 660
22.1.1顯示列表數據 660
22.1.2數據源 662
22.1.3DataGrid類的層次結構 669
22.2數據綁定 673
22.2.1簡單的綁定 673
22.2.2數據綁定對象 674
22.3VisualStudio.NET和數據訪問 679
22.3.1創建一個連線 679
22.3.2選擇數據 681
22.3.3生成DataSet 683
22.3.4更新數據源 684
22.3.5構建模式 686
22.3.6其他常見的要求 691
22.4小結 700
第23章處理XML 701
23.1.NET支持的XML標準 701
23.2System.Xml命名空間 702
23.3在.NET中使用MSXML 703
23.4使用System.Xml類 705
23.5讀寫流格式的XML 706
23.5.1使用XmlTextReader類 706
23.5.2使用XmlValidatingReader類 710
23.5.3使用XmlTextWriter類 713
23.6在.NET中使用DOM 714
23.7在NET中使用XPath和XSLT 721
23.7.1System.Xml.XPath命名空間 721
23.7.2System.Xml.Xsl命名空間 725
23.8XML和ADO.NET 730
23.8.1將ADO.NET數據轉換為XML文檔 730
23.8.2把XML文檔轉換為ADO.NET數據 739
23.8.3讀寫DiffGram 741
23.9在XML中串列化對象 744
23.10小結 756
第24章使用ActiveDirectory 757
24.1ActiveDirectory的體系結構 757
24.1.1特性 758
24.1.2ActiveDirectory的概念 758
24.1.3ActiveDirectory數據的特性 762
24.1.4模式 762
24.2ActiveDirectory的管理工具 763
24.2.1ActiveDirectoryUsersandComputers工具 764
24.2.2ADSIEdit工具 765
24.3ActiveDirectoryServiceInterfaces 766
24.4ActiveDirectory編程 766
24.4.1System.DirectoryServices命名空間中的類 767
24.4.2綁定 767
24.4.3獲取目錄項 771
24.4.4對象集合 773
24.4.5快取 774
24.4.6創建新對象 774
24.4.7更新目錄項 775
24.4.8訪問內部的ADSI對象 776
24.4.9在ActiveDirectory中搜尋 777
24.5搜尋用戶對象 781
24.5.1用戶界面 781
24.5.2獲取模式命名環境 782
24.5.3獲取User類的屬性名 783
24.5.4搜尋用戶對象 784
24.6小結 786
第25章ASP.NET頁面 787
25.1ASP.NET概述 787
25.2ASP.NETWeb窗體 788
25.3ADO.NET和數據綁定 805
25.3.1更新會議登記應用程式 805
25.3.2數據綁定的更多內容 813
25.4應用程式配置 819
25.5小結 820
第26章Web服務 821
26.1SOAP 821
26.2WSDL 823
26.3Web服務 824
26.3.1創建Web服務 824
26.3.2使用Web服務 828
26.4擴充會議登記示例 830
26.4.1會議登記Web服務 830
26.4.2會議登記客戶程式 834
26.5使用SOAP標題交換數據 836
26.6小結 841
第27章用戶控制項和定製控制項 842
27.1用戶控制項 842
27.2定製控制項 849
27.2.1定製控制項的項目配置 850
27.2.2基本的定製控制項 853
27.2.3創建合成的定製控制項 858
27.3測驗民意的投票控制項 860
27.3.1Candidate控制項 862
27.3.2StrawPoll控制項構建器 864
27.3.3測試民意的投票類型 865
27.3.4測試民意的投票控制項 865
27.4小結 872
第28章COM的互操作性 873
28.1.NET和COM 873
28.1.1元數據 874
28.1.2釋放記憶體 874
28.1.3接口 874
28.1.4方法綁定 876
28.1.5數據類型 876
28.1.6註冊 876
28.1.7執行緒 876
28.1.8錯誤處理 878
28.1.9事件處理 878
28.2編組 879
28.3在.NET客戶程式中使用COM組件 879
28.3.1創建COM組件 880
28.3.2創建RuntimeCallableWrapper 884
28.3.3執行緒問題 886
28.3.4添加連線點 886
28.3.5在Windows窗體中使用ActiveX控制項 888
28.3.6在ASP.NET中使用COM對象 891
28.4在COM客戶程式中使用.NET組件 892
28.4.1COMCallableWrapper 892
28.4.2創建.NET組件 892
28.4.3創建類型庫 893
28.4.4COM互操作特性 896
28.4.5COM註冊 899
28.4.6創建COM客戶程式 900
28.4.7添加連線點 901
28.4.8用sink對象創建客戶 902
28.4.9在InternetExplorer中運行Windows窗體控制項 903
28.5小結 904
第29章EnterpriseServices 905
29.1概述 905
29.1.1EnterpriseServices簡史 905
29.1.2使用EnterpriseServices的場合 905
29.1.3環境 906
29.1.4自動的事務處理 906
29.1.5分散式事務處理 907
29.1.6對象池 907
29.1.7基於角色的安全性 907
29.1.8排隊的組件 907
29.1.9鬆散藕合的事件 907
29.2創建簡單的COM+應用程式 908
29.2.1類ServicedComponent 908
29.2.2應用程式屬性 908
29.2.3創建組件 909
29.3部署 910
29.3.1自動部署 910
29.3.2手工部署 910
29.4組件服務管理工具 911
29.5客戶應用程式 913
29.6事務處理 913
29.6.1ACID屬性 914
29.6.2事務處理的屬性 914
29.6.3事務處理的結果 915
29.6.4示例應用程式 915
29.7小結 926
第30章檔案和註冊表操作 927
30.1管理檔案系統 927
30.1.1表示檔案和資料夾的.NET類 928
30.1.2Path類 930
30.1.3示例:檔案瀏覽器 931
30.2移動、複製和刪除檔案 936
30.3讀寫檔案 941
30.3.1流 941
30.3.2讀寫二進制檔案 942
30.3.3讀寫文本檔案 948
30.4讀寫註冊表 954
30.4.1註冊表 954
30.4.2.NET註冊表類 956
30.4.3SelfPlacingWindow示例 958
30.5小結 964
第31章訪問Internet 965
31.1WebClient類 965
31.1.1下載檔案 966
31.1.2基本的Web客戶示例 966
31.1.3上傳檔案 967
31.2WebRequest類和WebResponse類 968
31.3把輸出結果顯示為HTML頁面 971
31.4實用工具類 974
31.4.1URI 974
31.4.2IP位址和DNS名稱 976
31.5較低層的協定 978
31.6小結 985
第32章Windows服務 986
32.1Windows服務 986
32.2Windows服務的體系結構 987
32.2.1服務程式 987
32.2.2服務控制程式 989
32.2.3服務配置程式 989
32.3System.ServiceProcess命名空間 989
32.4創建Windows服務 989
32.4.1使用套接字的類庫 990
32.4.2TcpClient示例 994
32.4.3Windows服務項目 996
32.4.4執行緒和服務 1001
32.4.5服務的安裝 1001
32.4.6安裝程式 1001
32.5服務的監視和控制 1006
32.5.1MMC計算機管理 1006
32.5.2net.exe 1007
32.5.3sc.exe 1008
32.5.4VisualStudio.NETServerExplorer 1009
32.5.5ServiceController類 1009
32.6故障排除 1015
32.6.1互動式服務 1015
32.6.2事件日誌 1016
32.6.3性能監視 1022
32.7電源事件 1027
32.8小結 1027

相關詞條

熱門詞條

聯絡我們