對(duì)于初級(jí)的人來所還是有點(diǎn)深,經(jīng)典名著,你值得擁有,很厚,很全。適合當(dāng)工具書,就是有些關(guān)鍵字的空格符沒了,對(duì)提升基礎(chǔ)知識(shí)很不錯(cuò)。
c 高級(jí)編程(第9版)介紹
本書由.NET專家的夢幻組合編寫,包含開發(fā)人員使用C#所需的所有內(nèi)容。C#是編寫.NET應(yīng)用程序的一種語言,本書適合于希望提高編程技巧的、有經(jīng)驗(yàn)的C#程序員,也適用于剛開始使用C#的專業(yè)開發(fā)人員。本書探討了Visual Studio 2013和.NET Framework4.5.1、新的測試驅(qū)動(dòng)開發(fā)和并發(fā)編程功能。所有示例的源代碼都可以下載,讀者可以立即開始編寫Windows桌面應(yīng)用程序、Windows Store應(yīng)用程序和ASP.NET Web應(yīng)用程序。
c 高級(jí)編程(第9版)目錄
第Ⅰ部分C#語言
第1章.NET體系結(jié)構(gòu)
1.1C#與.NET的關(guān)系
1.2公共語言運(yùn)行庫
1.2.1平臺(tái)無關(guān)性
1.2.2提高性能
1.2.3語言的互操作性
1.3中間語言
1.3.1面向?qū)ο蠛徒涌诘闹С?/p>
1.3.2不同的值類型和引用類型
1.3.3強(qiáng)數(shù)據(jù)類型化
1.3.4通過異常處理錯(cuò)誤
1.3.5特性的使用
1.4程序集
1.4.1私有程序集
1.4.2共享程序集
1.4.3反射
1.4.4并行編程
1.4.5異步編程
1.5.NETFramework類
1.6名稱空間
1.7用C#創(chuàng)建.NET應(yīng)用程序
1.7.1創(chuàng)建ASP.NET應(yīng)用程序
1.7.2使用WPF
1.7.3WindowsStore應(yīng)用程序
1.7.4Windows服務(wù)
1.7.5WCF
1.7.6WindowsWF
1.8C#在.NET企業(yè)體系結(jié)構(gòu)中的作用
1.9小結(jié)
第2章核心C#
2.1C#基礎(chǔ)
2.2第一個(gè)C#程序
2.2.1代碼
2.2.2編譯并運(yùn)行程序
2.2.3詳細(xì)介紹
2.3變量
2.3.1變量的初始化
2.3.2類型推斷
2.3.3變量的作用域
2.3.4常量
2.4預(yù)定義數(shù)據(jù)類型
2.4.1值類型和引用類型
2.4.2CTS類型
2.4.3預(yù)定義的值類型
2.4.4預(yù)定義的引用類型
2.5流控制
2.5.1條件語句
2.5.2循環(huán)
2.5.3跳轉(zhuǎn)語句
2.6枚舉
2.7名稱空間
2.7.1using語句
2.7.2名稱空間的別名
2.8Main()方法
2.8.1多個(gè)Main()方法
2.8.2給Main()方法傳遞參數(shù)
2.9有關(guān)編譯C#文件的更多內(nèi)容
2.10控制臺(tái)I/O
2.11使用注釋
2.11.1源文件中的內(nèi)部注釋
2.11.2XML文檔
2.12C#預(yù)處理器指令
2.12.1#define和#undef
2.12.2#if、#elif、#else和#endif
2.12.3#warning和#error
2.12.4#region和#endregion
2.12.5#line
2.12.6#pragma
2.13C#編程規(guī)則
2.13.1關(guān)于標(biāo)識(shí)符的規(guī)則
2.13.2用法約定
2.14小結(jié)
第3章對(duì)象和類型
3.1創(chuàng)建及使用類
3.2類和結(jié)構(gòu)
3.3類
3.3.1數(shù)據(jù)成員
3.3.2函數(shù)成員
3.3.3只讀字段
3.4匿名類型
3.5結(jié)構(gòu)
3.5.1結(jié)構(gòu)是值類型
3.5.2結(jié)構(gòu)和繼承
3.5.3結(jié)構(gòu)的構(gòu)造函數(shù)
3.6弱引用
3.7部分類
3.8靜態(tài)類
3.9Object類
3.9.1System.Object()方法
3.9.2ToString()方法
3.10擴(kuò)展方法
3.11小結(jié)
第4章繼承
4.1繼承
4.2繼承的類型
4.2.1實(shí)現(xiàn)繼承和接口繼承
4.2.2多重繼承
4.2.3結(jié)構(gòu)和類
4.3實(shí)現(xiàn)繼承
4.3.1虛方法
4.3.2隱藏方法
4.3.3調(diào)用函數(shù)的基類版本
4.3.4抽象類和抽象函數(shù)
4.3.5密封類和密封方法
4.3.6派生類的構(gòu)造函數(shù)
4.4修飾符
4.4.1可見性修飾符
4.4.2其他修飾符
4.5接口
4.5.1定義和實(shí)現(xiàn)接口
4.5.2派生的接口
4.6小結(jié)
第5章泛型
5.1泛型概述
5.1.1性能
5.1.2類型安全
5.1.3二進(jìn)制代碼的重用
5.1.4代碼的擴(kuò)展
5.1.5命名約定
5.2創(chuàng)建泛型類
5.3泛型類的功能
5.3.1默認(rèn)值
5.3.2約束
5.3.3繼承
5.3.4靜態(tài)成員
5.4泛型接口
5.4.1協(xié)變和抗變
5.4.2泛型接口的協(xié)變
5.4.3泛型接口的抗變
5.5泛型結(jié)構(gòu)
5.6泛型方法
5.6.1泛型方法示例
5.6.2帶約束的泛型方法
5.6.3帶委托的泛型方法
5.6.4泛型方法規(guī)范
5.7小結(jié)
第6章數(shù)組
6.1同一類型和不同類型的多個(gè)對(duì)象
6.2簡單數(shù)組
6.2.1數(shù)組的聲明
6.2.2數(shù)組的初始化
6.2.3訪問數(shù)組元素
6.2.4使用引用類型
6.3多維數(shù)組
6.4鋸齒數(shù)組
6.5Array類
6.5.1創(chuàng)建數(shù)組
6.5.2復(fù)制數(shù)組
6.5.3排序
6.6數(shù)組作為參數(shù)
6.6.1數(shù)組協(xié)變
6.6.2ArraySegment<;T>;
6.7枚舉
6.7.1IEnumerator接口
6.7.2foreach語句
6.7.3yield語句
6.8元組
6.9結(jié)構(gòu)比較
6.10小結(jié)
第7章運(yùn)算符和類型強(qiáng)制轉(zhuǎn)換
7.1運(yùn)算符和類型轉(zhuǎn)換
7.2運(yùn)算符
7.2.1運(yùn)算符的簡化操作
7.2.2運(yùn)算符的優(yōu)先級(jí)
7.3類型的安全性
7.3.1類型轉(zhuǎn)換
7.3.2裝箱和拆箱
7.4比較對(duì)象的相等性
7.4.1比較引用類型的相等性
7.4.2比較值類型的相等性
7.5運(yùn)算符重載
7.5.1運(yùn)算符的工作方式
7.5.2運(yùn)算符重載的示例:Vector結(jié)構(gòu)
7.6用戶定義的類型強(qiáng)制轉(zhuǎn)換
7.6.1實(shí)現(xiàn)用戶定義的類型強(qiáng)制轉(zhuǎn)換
7.6.2多重類型強(qiáng)制轉(zhuǎn)換
7.7小結(jié)
第8章委托、lambda表達(dá)式和事件
8.1引用方法
8.2委托
8.2.1聲明委托
8.2.2使用委托
8.2.3簡單的委托示例
8.2.4Action<;T>;和Func<;T>;委托
8.2.5BubbleSorter示例
8.2.6多播委托
8.2.7匿名方法
8.3lambda表達(dá)式
8.3.1參數(shù)
8.3.2多行代碼
8.3.3閉包
8.3.4使用foreach語句的閉包
8.4事件
8.4.1事件發(fā)布程序
8.4.2事件偵聽器
8.4.3弱事件
8.5小結(jié)
第9章字符串和正則表達(dá)式
9.1System.String類
9.1.1創(chuàng)建字符串
9.1.2StringBuilder成員
9.1.3格式字符串
9.2正則表達(dá)式
9.2.1正則表達(dá)式概述
9.2.2RegularExpressionsPlayaround示例
9.2.3顯示結(jié)果
9.2.4匹配、組合和捕獲
9.3小結(jié)
第10章集合
10.1概述
10.2集合接口和類型
10.3列表
10.3.1創(chuàng)建列表
10.3.2只讀集合
10.4隊(duì)列
10.5棧
10.6鏈表
10.7有序列表
10.8字典
10.8.1鍵的類型
10.8.2字典示例
10.8.3Lookup類
10.8.4有序字典
10.9集
10.10可觀察的集合
10.11位數(shù)組
10.11.1BitArray類
10.11.2BitVector32結(jié)構(gòu)
10.12不變的集合
10.13并發(fā)集合
10.13.1創(chuàng)建管道
10.13.2使用BlockingCollection
10.13.3使用ConcurrentDictionary
10.13.4完成管道
10.14性能
10.15小結(jié)
第11章LINQ
11.1LINQ概述
11.1.1列表和實(shí)體
11.1.2LINQ查詢
11.1.3擴(kuò)展方法
11.1.4推遲查詢的執(zhí)行
11.2標(biāo)準(zhǔn)的查詢操作符
11.2.1篩選
11.2.2用索引篩選
11.2.3類型篩選
11.2.4復(fù)合的from子句
11.2.5排序
11.2.6分組
11.2.7對(duì)嵌套的對(duì)象分組
11.2.8內(nèi)連接
11.2.9左外連接
11.2.10組連接
11.2.11集合操作
11.2.12合并
11.2.13分區(qū)
11.2.14聚合操作符
11.2.15轉(zhuǎn)換操作符
11.2.16生成操作符
11.3并行LINQ
11.3.1并行查詢
11.3.2分區(qū)器
11.3.3取消
11.4表達(dá)式樹
11.5LINQ提供程序
11.6小結(jié)
第12章動(dòng)態(tài)語言擴(kuò)展
12.1DLR
12.2dynamic類型
12.3包含DLRScriptRuntime
12.4DynamicObject和ExpandoObject
12.4.1DynamicObject
12.4.2ExpandoObject
12.5小結(jié)
第13章異步編程
13.1異步編程的重要性
13.2異步模式
13.2.1同步調(diào)用
13.2.2異步模式
13.2.3基于事件的異步模式
13.2.4基于任務(wù)的異步模式
13.3異步編程的基礎(chǔ)
13.3.1創(chuàng)建任務(wù)
13.3.2調(diào)用異步方法
13.3.3延續(xù)任務(wù)
13.3.4同步上下文
13.3.5使用多個(gè)異步方法
13.3.6轉(zhuǎn)換異步模式
13.4錯(cuò)誤處理
13.4.1異步方法的異常處理
13.4.2多個(gè)異步方法的異常處理
13.4.3使用AggregateException信息
13.5取消
13.5.1開始取消任務(wù)
13.5.2使用框架特性取消任務(wù)
13.5.3取消自定義任務(wù)
13.6小結(jié)
第14章內(nèi)存管理和指針
14.1內(nèi)存管理
14.2后臺(tái)內(nèi)存管理
14.2.1值數(shù)據(jù)類型
14.2.2引用數(shù)據(jù)類型
14.2.3垃圾回收
14.3釋放非托管的資源
14.3.1析構(gòu)函數(shù)
14.3.2IDisposable接口
14.3.3實(shí)現(xiàn)IDisposable接口和析構(gòu)函數(shù)
14.4不安全的代碼
14.4.1用指針直接訪問內(nèi)存
14.4.2指針示例:PointerPlayground
14.4.3使用指針優(yōu)化性能
14.5小結(jié)
第15章反射
15.1在運(yùn)行期間處理和檢查代碼
15.2自定義特性
15.2.1編寫自定義特性
15.2.2自定義特性示例:WhatsNewAttributes
15.3反射
15.3.1System.Type類
15.3.2TypeView示例
15.3.3Assembly類
15.3.4完成WhatsNewAttributes示例
15.4小結(jié)
第16章錯(cuò)誤和異常
16.1簡介
16.2異常類
16.3捕獲異常
16.3.1實(shí)現(xiàn)多個(gè)catch塊
16.3.2在其他代碼中捕獲異常
16.3.3System.Exception屬性
16.3.4沒有處理異常時(shí)所發(fā)生的情況
16.3.5嵌套的try塊
16.4用戶定義的異常類
16.4.1捕獲用戶定義的異常
16.4.2拋出用戶定義的異常
16.4.3定義用戶定義的異常類
16.5調(diào)用者信息
16.6小結(jié)
第Ⅱ部分VisualStudio
第Ⅲ部分基礎(chǔ)
第Ⅳ部分?jǐn)?shù)據(jù)
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版