 |
-- 會員 / 註冊 --
|
|
|
|
C#編程語言詳解(第2版) ( 簡體 字) |
作者:韓江等譯 | 類別:1. -> 程式設計 -> .NET -> C# |
譯者: |
出版社:電子工業出版社 | 3dWoo書號: 9301 詢問書籍請說出此書號!【缺書】 【不接受訂購】 |
出版日:8/1/2007 |
頁數:716 |
光碟數:0 |
|
站長推薦:  |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
【不接受訂購】 | ISBN:9787121047053 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介:C#是一種簡單、現代、面向物件和類型安全的程式設計語言。本書由C#語言的架構師Anders Hejlsberg和設計小組的成員編寫,並為C# 2.0進行了更新。全書從C#語言的簡介開始,完整並詳細地介紹了C# 1.0的技術規範,並介紹了許多C# 2.0的新功能,包括泛型、匿名方法、迭代器、分部類型和可空類型等。本書對第一版中介紹的C#新增了許多功能,並做了很多改進。 本書內容翔實,實例豐富,既可以作為高等院校學生學習C#的教材,也是希望深入探索C#編程知識的程式師的最權威的參考書。
|
目錄:第一篇 C# 1.0 第1章 C#簡介 3 1.1 Hello World 4 1.2 程式結構 5 1.3 類型和變數 7 1.4 運算式 11 1.5 語句 14 1.6 類和對象 18 1.6.1 成員 18 1.6.2 可訪問性 19 1.6.3 基類 20 1.6.4 域 20 1.6.5 方法 21 1.6.6 其他函數成員 29 1.7 結構 34 1.8 陣列 35 1.9 介面 37 1.10 枚舉 39 1.11 委託 40 1.12 特性 42 第2章 詞法結構 45 2.1 程式 45 2.2 文法 45 2.2.1 文法表示法 45 2.2.2 詞法文法 47
2.2.3 句法文法 47 2.3 詞法分析 47 2.3.1 行終結符 48 2.3.2 空白 49 2.3.3 注釋 49 2.4 標記 51 2.4.1 Unicode字元轉義序列 51 2.4.2 識別字 52 2.4.3 關鍵字 54 2.4.4 字面值 55 2.4.5 運算符和標點 61 2.5 預處理指令 61 2.5.1 條件編譯符號 63 2.5.2 預處理運算式 64 2.5.3 聲明指令 64 2.5.4 條件編譯指令 66 2.5.5 診斷指令 69 2.5.6 區域指令 69 2.5.7 行指令 70 第3章 基本概念 73 3.1 應用程式啟動 73 3.2 應用程式終止 74 3.3 聲明 75 3.4 成員 77 3.4.1 命名空間成員 78 3.4.2 結構成員 78 3.4.3 枚舉成員 79 3.4.4 類成員 79 3.4.5 介面成員 79 3.4.6 陣列成員 79 3.4.7 委託成員 79 3.5 成員訪問 79 3.5.1 已聲明可訪問性 80 3.5.2 可訪問域 81 3.5.3 實例成員的受保護訪問 84 3.5.4 可訪問性約束 85 3.6 簽名和重載 86 3.7 範圍 87 名稱隱藏 90 3.8 命名空間和類型名稱 93 完全限定名 94 3.9 自動記憶體管理 95 3.10 執行順序 99 第4章 類型 101 4.1 值類型 101 4.1.1 System.ValueType類型 102 4.1.2 默認構造函數 103 4.1.3 結構類型 104 4.1.4 簡單類型 104 4.1.5 整型 105 4.1.6 浮點型 107 4.1.7 decimal類型 108 4.1.8 bool類型 109 4.1.9 枚舉類型 109 4.2 引用類型 110 4.2.1 類類型 110 4.2.2 對象類型 111 4.2.3 string類型 111 4.2.4 介面類型 111 4.2.5 陣列類型 112 4.2.6 委託類型 112 4.3 裝箱和拆箱 112 4.3.1 裝箱轉換 112 4.3.2 拆箱轉換 114 第5章 變數 115 5.1 變數類別 115 5.1.1 靜態變數 116 5.1.2 實例變數 116 5.1.3 陣列元素 116 5.1.4 值參數 117 5.1.5 引用參數 117 5.1.6 輸出參數 117 5.1.7 局部變數 118 5.2 預設值 119 5.3 明確賦值 119 5.3.1 初始已賦值變數 120 5.3.2 初始未賦值變數 121 5.3.3 確定是否明確賦值的細則 121 5.4 變數引用 133 5.5 變數引用的原子性 133 第6章 轉換 135 6.1 隱式轉換 135 6.1.1 標識轉換 136 6.1.2 隱式數值轉換 136 6.1.3 隱式枚舉轉換 136 6.1.4 隱式引用轉換 136 6.1.5 裝箱轉換 137 6.1.6 隱式常量運算式轉換 137 6.1.7 用戶自定義的隱式轉換 137 6.2 顯式轉換 138 6.2.1 顯式數值轉換 138 6.2.2 顯式枚舉轉換 140 6.2.3 顯式引用轉換 141 6.2.4 拆箱轉換 142 6.2.5 用戶自定義的顯式轉換 142 6.3 標準轉換 142 6.3.1 標準隱式轉換 142 6.3.2 標準顯式轉換 142 6.4 用戶自定義的轉換 143 6.4.1 允許的用戶自定義轉換 143 6.4.2 用戶自定義轉換的計算 143 6.4.3 用戶自定義的隱式轉換 144 6.4.4 用戶自定義的顯式轉換 145 第7章 運算式 147 7.1 運算式的分類 147 運算式的值 148 7.2 運算符 149 7.2.1 運算符的優先順序和結合性 149 7.2.2 運算符重載 151 7.2.3 單項運算符重載決策 153 7.2.4 二元運算符重載決策 153 7.2.5 候選用戶自定義運算符 154 7.2.6 數值提升 154 7.3 成員查找 156 基類型 157 7.4 函數成員 157 7.4.1 引數列表 162 7.4.2 重載決策 165 7.4.3 函數成員調用 168 7.5 基本運算式 170 7.5.1 字面值 170 7.5.2 簡單名稱 171 7.5.3 帶括弧的運算式 173 7.5.4 成員訪問 173 7.5.5 調用運算式 176 7.5.6 元素訪問 178 7.5.7 this訪問 180 7.5.8 base訪問 181 7.5.9 尾碼增量和尾碼減量 7.5.9 運算符 181 7.5.10 new運算符 183 7.5.11 typeof運算符 189 7.5.12 checked和unchecked 7.5.12 運算符 190 7.6 單項運算符 193 7.6.1 一元加運算符 193 7.6.2 一元減運算符 194 7.6.3 邏輯求反運算符 195 7.6.4 按位求補運算符 195 7.6.5 首碼增量和減量運算符 195 7.6.6 強制轉換運算式 197 7.7 算術運算符 198 7.7.1 乘法運算符 198 7.7.2 除法運算符 199 7.7.3 餘數運算符 201 7.7.4 加法運算符 202 7.7.5 減法運算符 205 7.8 移位運算符 207 7.9 關係和類型測試運算符 209 7.9.1 整數比較運算符 210 7.9.2 浮點比較運算符 210 7.9.3 小數比較運算符 211 7.9.4 布林相等運算符 212 7.9.5 枚舉比較運算符 212 7.9.6 引用類型相等運算符 212 7.9.7 字串相等運算符 214 7.9.8 委託相等運算符 214 7.9.9 is運算符 215 7.9.10 as運算符 216 7.10 邏輯運算符 216 7.10.1 整數邏輯運算符 217 7.10.2 枚舉邏輯運算符 217 7.10.3 布林邏輯運算符 218 7.11 條件邏輯運算符 218 7.11.1 布林條件邏輯運算符 219 7.11.2 用戶自定義的條件 7.11.2 邏輯運算符 219 7.12 條件運算符 220 7.13 賦值運算符 221 7.13.1 簡單賦值 222 7.13.2 複合賦值 224 7.13.3 事件賦值 226 7.14 運算式 226 7.15 常量運算式 226 7.16 布林運算式 228 第8章 語句 229 8.1 結束點和可到達性 230 8.2 塊 232 語句列表 232 8.3 空語句 233 8.4 標記語句 233 8.5 聲明語句 234 8.5.1 局部變數聲明 234 8.5.2 局部常量聲明 236 8.6 運算式語句 236 8.7 選擇語句 237 8.7.1 if語句 237 8.7.2 switch語句 238 8.8 迭代語句 243 8.8.1 while語句 243 8.8.2 do語句 244 8.8.3 for語句 244 8.8.4 foreach語句 246 8.9 跳轉語句 248 8.9.1 break語句 250 8.9.2 continue語句 251 8.9.3 goto語句 251 8.9.4 return語句 253 8.9.5 throw語句 254 8.10 try語句 255 8.11 checked語句和unchecked 8.11 語句 258 8.12 lock語句 259 8.13 using語句 260 第9章 命名空間 263 9.1 編譯單元 263 9.2 命名空間聲明 264 9.3 using指令 265 9.3.1 using別名指令 266 9.3.2 using命名空間指令 269 9.4 命名空間成員 271 9.5 類型聲明 271 第10章 類 273 10.1 類聲明 273 10.1.1 類修飾符 273 10.1.2 類基規範 275 10.1.3 類主體 277 10.2 類成員 277 10.2.1 繼承 279 10.2.2 new修飾符 280 10.2.3 訪問修飾符 280 10.2.4 構成類型 280 10.2.5 靜態成員和實例成員 280 10.2.6 嵌套類型 281 10.2.7 保留成員名稱 286 10.3 常量 287 10.4 域 290 10.4.1 靜態域和實例域 291 10.4.2 唯讀域 292 10.4.3 易失域 293 10.4.4 域初始化 295 10.4.5 變數初始值設定項 295 10.5 方法 299 10.5.1 方法參數 301 10.5.2 靜態方法和實例方法 308 10.5.3 虛方法 308 10.5.4 重寫方法 311 10.5.5 密封方法 313 10.5.6 抽象方法 313 10.5.7 外部方法 315 10.5.8 方法主體 316 10.5.9 方法重載 317 10.6 屬性 317 10.6.1 靜態屬性和實例屬性 318 10.6.2 訪問器 319 10.6.3 虛、密封、重寫和 10.6.3 抽象訪問器 325 10.7 事件 327 10.7.1 類似域的事件 329 10.7.2 事件訪問器 331 10.7.3 靜態事件和實例事件 332 10.7.4 虛、密封、重寫和 10.7.4 抽象訪問器 333 10.8 索引器 333 索引器重載 338 10.9 運算符 338 10.9.1 單項運算符 340 10.9.2 二元運算符 341 10.9.3 轉換運算符 341 10.10 實例構造函數 343 10.10.1 構造函數初始值 10.10.1 設定項 344 10.10.2 實例變數初始值 10.10.2 設定項 345 10.10.3 構造函數的執行 346 10.10.4 默認構造函數 348 10.10.5 私有構造函數 348 10.10.6 可選的實例構造函數 10.10.6 參數 349 10.11 靜態構造函數 349 10.12 析構函數 352 第11章 結構 355 11.1 結構聲明 355 11.1.1 結構修飾符 356 11.1.2 結構介面 356 11.1.3 結構主體 356 11.2 結構成員 356 11.3 類和結構的區別 357 11.3.1 值語義 357 11.3.2 繼承 359 11.3.3 賦值 359 11.3.4 預設值 359 11.3.5 裝箱和拆箱 360 11.3.6 this的意義 360 11.3.7 域初始值設定項 361 11.3.8 構造函數 361 11.3.9 析構函數 362 11.3.10 靜態構造函數 362 11.4 結構示例 363 11.4.1 資料庫整型 363 11.4.2 資料庫布林類型 365 第12章 陣列 367 12.1 陣列類型 367 System.Array類型 368 12.2 陣列創建 369 12.3 陣列元素訪問 369 12.4 陣列成員 369 12.5 陣列協變 369 12.6 陣列初始值設定項 370 第13章 介面 373 13.1 介面聲明 373 13.1.1 介面修飾符 373 13.1.2 基介面 374 13.1.3 介面主體 375 13.2 介面成員 375 13.2.1 介面方法 376 13.2.2 介面屬性 377 13.2.3 介面事件 377 13.2.4 介面索引器 377 13.2.5 介面成員訪問 378 13.3 完全限定介面成員名 380 13.4 介面實現 380 13.4.1 顯式介面成員實現 381 13.4.2 介面映射 384 13.4.3 介面實現繼承 387 13.4.4 介面重新實現 389 13.4.5 抽象類和介面 391 第14章 枚舉 393 14.1 枚舉聲明 393 14.2 枚舉修飾符 394 14.3 枚舉成員 394 14.4 System.Enum類型 397 14.5 枚舉的值和運算 397 第15章 委託 399 15.1 委託聲明 399 15.2 委託實例化 402 15.3 委託調用 403 第16章 異常 407 16.1 導致異常的原因 407 16.2 System.Exception類 408 16.3 異常的處理方式 408 16.4 公共異常類 409 第17章 特性 411 17.1 特性類 411 17.1.1 特性用法 411 17.1.2 定位和命名參數 413 17.1.3 特性參數類型 414 17.2 特性專用化 414 17.3 特性實例 420 17.3.1 特性的編譯 421 17.3.2 特性實例的運行時檢索 421 17.4 保留的特性 422 17.4.1 AttributeUsage特性 422 17.4.2 Conditional特性 423 17.4.3 Obsolete特性 427 17.5 交互操作的特性 428 17.5.1 與COM和Win32組件 17.5.1 的交互操作 428 17.5.2 與其他.NET語言的 17.5.2 交互操作 428 第18章 不安全代碼 429 18.1 不安全上下文 429 18.2 指針類型 433 18.3 固定變數和 18.3 可移動變數 436 18.4 指針轉換 437 18.5 運算式中的指標 438 18.5.1 指針間接定址 439 18.5.2 指針成員訪問 439 18.5.3 指標元素訪問 440 18.5.4 address-of運算符 441 18.5.5 指針遞增和遞減 442 18.5.6 指標演算法 443 18.5.7 指針比較 444 18.5.8 sizeof運算符 444 18.6 固定語句 446 18.7 堆疊分配 450 18.8 動態記憶體分配 451 第二篇 C#2.0 第19章 C#2.0簡介 457 19.1 泛型 458 19.1.1 為什麼要使用泛型 458 19.1.2 創建和使用泛型 459 19.1.3 泛型類型實例化 460 19.1.4 約束 460 19.1.5 泛型方法 462 19.2 匿名方法 463 方法組轉換 466 19.3 迭代器 467 19.4 分部類型 471 19.5 可空類型 472 第20章 泛型 477 20.1 泛型類聲明 477 20.1.1 類型參數 478 20.1.2 實例類型 479 20.1.3 基規範 480 20.1.4 泛型類的成員 480 20.1.5 泛型類中的靜態域 481 20.1.6 泛型類中的靜態構造 20.1.6 函數 482 20.1.7 訪問受保護成員 482 20.1.8 泛型類中的重載 483 20.1.9 參數陣列方法和類型 20.1.9 參數 484 20.1.10 重寫與泛型類 484 20.1.11 泛型類中的運算符 485 20.1.12 泛型類中的嵌套類型 487 20.1.13 應用程式入口點 488 20.2 泛型結構聲明 488 20.3 泛型介面聲明 488 20.3.1 所實現介面的唯一性 488 20.3.2 顯式介面成員實現 490 20.4 泛型委託聲明 490 20.5 構造類型 491 20.5.1 類型引數 493 20.5.2 開放和封閉類型 493 20.5.3 構造類型的基類和介面 494 20.5.4 構造類型的成員 494 20.5.5 構造類型的可訪問性 495 20.5.6 轉換 495 20.5.7 using別名指令 496 20.5.8 屬性 497 20.5.9 陣列和泛型IList介面 497 20.6 泛型方法 498 20.6.1 泛型方法簽名 499 20.6.2 虛泛型方法 500 20.6.3 調用泛型方法 501 20.6.4 類型引數推斷 502 20.6.5 語法多義性 504 20.6.6 通過委託使用泛型方法 505 20.6.7 不能是泛型的成員 506 20.7 約束 506 20.7.1 滿足約束 511 20.7.2 類型參數上的成員查找 513 20.7.3 類型參數和裝箱 513 20.7.4 涉及類型參數的轉換 515 20.8 運算式和語句 517 20.8.1 對象創建運算式 517 20.8.2 typeof運算符 517 20.8.3 引用相等運算符 519 20.8.4 is運算符 520 20.8.5 as運算符 520 20.8.6 異常語句 520 20.8.7 lock語句 520 20.8.8 using語句 521 20.8.9 foreach 語句 521 20.9 查找規則的修改 521 20.9.1 命名空間和類型名稱 521 20.9.2 成員查找 524 20.9.3 適用函數成員 526 20.9.4 更好的函數成員 526 20.9.5 簡單名稱 527 20.9.6 成員訪問 529 20.9.7 方法調用 531 20.10 右移語法變化 533 第21章 匿名方法 535 21.1 匿名方法運算式 535 21.2 匿名方法簽名 535 21.3 匿名方法轉換 536 21.4 匿名方法塊 537 21.5 外層變數 538 21.5.1 捕獲的外層變數 538 21.5.2 局部變數實例化 539 21.6 匿名方法計算 541 21.7 委託實例相等性 542 21.8 明確賦值 543 21.9 方法組轉換 544 21.10 委託創建運算式 546 21.11 實現示例 546 第22章 迭代器 551 22.1 迭代器塊 551 22.1.1 枚舉器介面 551 22.1.2 可枚舉介面 552 22.1.3 產生類型 552 22.1.4 this訪問 552 22.2 枚舉器對象 552 22.2.1 MoveNext方法 553 22.2.2 Current屬性 555 22.2.3 Dispose方法 555 22.3 可枚舉對象 555 GetEnumerator方法 556 22.4 yield語句 556 明確賦值 558 22.5 實現示例 558 第23章 分部類型 567 23.1 分部聲明 567 23.1.1 屬性 568 23.1.2 修飾符 568 23.1.3 類型參數和約束 568 23.1.4 基類 569 23.1.5 基介面 569 23.1.6 成員 570 23.2 名稱綁定 571 第24章 可空類型 573 24.1 可空類型 573 24.1.1 成員 573 24.1.2 預設值 574 24.1.3 值類型約束 574 24.2 轉換 574 24.2.1 null字面值轉換 575 24.2.2 可空轉換 575 24.2.3 裝箱和拆箱轉換 576 24.2.4 允許的用戶自定義轉換 577 24.2.5 用戶自定義轉換的計算 577 24.2.6 提升的轉換 578 24.2.7 用戶自定義的隱式轉換 578 24.2.8 用戶自定義的顯式轉換 579 24.3 運算式 580 24.3.1 提升運算符 580 24.3.2 允許的用戶自定義 24.3.2 運算符 581 24.3.3 運算符重載決策 582 24.3.4 相等操作符和空 582 24.3.5 is運算符 582 24.3.6 as運算符 583 24.3.7 複合賦值 583 24.3.8 bool?類型 584 24.3.9 空合併運算符 584 第25章 其他功能 587 25.1 屬性訪問器的可訪問性 587 25.1.1 訪問器聲明 587 25.1.2 訪問器的使用 588 25.1.3 重寫和介面實現 589 25.2 靜態類 590 25.2.1 靜態類聲明 590 25.2.2 引用靜態類類型 591 25.3 命名空間別名限定符 592 25.3.1 限定的別名成員 594 25.3.2 別名的唯一性 595 25.4 extern別名 596 extern別名指令 598 25.5 pragma指令 600 pragma warning 600 25.6 預設值運算式 601 25.7 條件特性類 602 25.8 固定大小緩衝區 603 25.8.1 固定大小緩衝區的聲明 603 25.8.2 運算式中的固定大小 25.8.2 緩衝區 605 25.8.3 Fixed語句 606 25.8.4 明確賦值檢查 607 第三篇 附錄 附錄A 文檔注釋 611 附錄B 語法 635 索引 675
|
序: |
|