C#程序設(shè)計(jì)實(shí)用教程

出版時(shí)間:2011-5  出版社:機(jī)械工業(yè)出版社  作者:李正夫 編  頁數(shù):301  

內(nèi)容概要

  《C#程序設(shè)計(jì)實(shí)用教程》是一本講解C#語言和.NET技術(shù)的教材,主要內(nèi)容包括.NET概述、C#語法基礎(chǔ)、控制語句、面向?qū)ο蠹夹g(shù)、集合和泛型、常用類和數(shù)據(jù)結(jié)構(gòu)、Windows窗體和控件、GDI+、文件和流操作、線程和進(jìn)程、ADO.NET 和Web編程等?!禖#程序設(shè)計(jì)實(shí)用教程》結(jié)合微軟公司Visual Studio 2008和.NET平臺進(jìn)行講解,同時(shí)每一章后都安排有針對性的練習(xí)題。全書各章都精心編排了相關(guān)實(shí)例,同時(shí)為了幫助讀者更好地在實(shí)際項(xiàng)目中體會《C#程序設(shè)計(jì)實(shí)用教程》所講內(nèi)容,特別安排了五個(gè)綜合項(xiàng)目,供讀者學(xué)習(xí)參考?!  禖#程序設(shè)計(jì)實(shí)用教程》內(nèi)容翔實(shí)、結(jié)構(gòu)合理清晰、實(shí)用性強(qiáng)。初學(xué)者可以很容易借助《C#程序設(shè)計(jì)實(shí)用教程》掌握Visual Studio 2008和.NET平臺的使用,開始C#編程開發(fā)之旅。有一定基礎(chǔ)的讀者也可以從《C#程序設(shè)計(jì)實(shí)用教程》中獲得很多有價(jià)值的參考信息?!禖#程序設(shè)計(jì)實(shí)用教程》適合作為高等院校C#語言課程的教材,也可作為初中級編程人員的自學(xué)參考書。

書籍目錄

言第1章 .NET概述11.1 .NET11.2 .NET平臺的組成11.3 .NET Framework21.3.1 公共語言運(yùn)行時(shí)31.3.2 .NET Framework類庫和命名空間41.4 C#與其他編程語言的比較51.4.1 與C、C++的比較51.4.2 與Java的比較51.5 Visual Studio 200851.5.1 Visual Studio 2008的安裝61.5.2 使用Visual Studio 200881.6 小結(jié)131.7 習(xí)題13第2章 數(shù)據(jù)類型、運(yùn)算符及其表達(dá)式152.1 C#基本語法152.1.1 語句152.1.2 空白152.1.3 注釋162.2 變量和常量182.2.1 變量182.2.2 常量192.3 值類型202.3.1 簡單值類型202.3.2 枚舉類型232.3.3 結(jié)構(gòu)體類型252.4 引用類型272.5 運(yùn)算符272.5.1 算術(shù)運(yùn)算符272.5.2 賦值運(yùn)算符282.5.3 關(guān)系運(yùn)算符282.5.4 邏輯運(yùn)算符282.5.5 條件運(yùn)算符292.5.6 typeof運(yùn)算符292.6 小結(jié)292.7 習(xí)題29第3章 控制語句313.1 流程控制概述313.2 分支語句323.2.1 if語句323.2.2 switch語句343.3 循環(huán)結(jié)構(gòu)353.3.1 while循環(huán)語句363.3.2 do-while循環(huán)373.3.3 for循環(huán)383.3.4 foreach循環(huán)403.4 跳轉(zhuǎn)語句413.4.1 break語句413.4.2 continue語句423.4.3 return語句423.4.4 goto語句433.5 預(yù)處理指令443.5.1 region預(yù)處理指令453.5.2 定義預(yù)處理指令453.5.3 條件預(yù)處理指令453.5.4 warning和error預(yù)處理指令463.6 小結(jié)473.7 習(xí)題473.8 綜合項(xiàng)目-猜數(shù)字游戲483.8.1 項(xiàng)目分析483.8.2 項(xiàng)目設(shè)計(jì)493.8.3 項(xiàng)目實(shí)現(xiàn)50第4章 面向?qū)ο蟪绦蛟O(shè)計(jì)基礎(chǔ)554.1 類與對象概述554.2 類的定義564.3 類的使用-實(shí)例化及使用對象574.3.1 聲明對象574.3.2 實(shí)例化類得到對象584.3.3 訪問對象584.4 訪問控制594.4.1 訪問修飾符public594.4.2 訪問修飾符private594.4.3 訪問修飾符protected594.4.4 訪問修飾符internal604.5 類的封裝性與屬性604.5.1 類的封裝性604.5.2 屬性604.5.3 方法624.6 方法的重載634.7 類的構(gòu)造函數(shù)與析構(gòu)函數(shù)634.8 靜態(tài)成員664.9 委托和事件684.10 應(yīng)用實(shí)例704.11 小結(jié)734.12 習(xí)題73第5章 面向?qū)ο筇岣?45.1 封裝、繼承、多態(tài)745.1.1 封裝745.1.2 繼承745.1.3 多態(tài)785.2 抽象類、密封類與接口825.2.1 抽象類825.2.2 密封類835.2.3 接口845.3 this和base關(guān)鍵字875.4 異常處理905.5 小結(jié)915.6 習(xí)題915.7 綜合實(shí)例項(xiàng)目-汽車公司935.7.1 項(xiàng)目分析935.7.2 項(xiàng)目設(shè)計(jì)935.7.3 項(xiàng)目實(shí)現(xiàn)94第6章 集合與泛型996.1 數(shù)組996.2 集合1006.2.1 列表1016.2.2 隊(duì)列1036.2.3 哈希表1056.2.4 棧1076.2.5 有序表1096.3 泛型1116.3.1 List1116.3.2 Stack1136.4 小結(jié)1146.5 習(xí)題114第7章 常用類和數(shù)據(jù)類型1157.1 字符串1157.1.1 System.String類1167.1.2 System.Text.StringBuilder類1217.2 日期時(shí)間1257.2.1 DateTime結(jié)構(gòu)1267.2.2 TimeSpan結(jié)構(gòu)1287.3 System.Object類1297.4 隨機(jī)數(shù)對象1307.5 類型之間的轉(zhuǎn)換1317.6 小結(jié)1347.7 習(xí)題134第8章 Windows窗體和控件1358.1 窗體概述1358.1.1 創(chuàng)建窗體應(yīng)用程序1358.1.2 設(shè)置窗體的屬性1368.1.3 窗體的事件1368.1.4 窗體的方法1378.1.5 特殊窗體的創(chuàng)建1378.2 窗體控件1388.2.1 窗體控件概述1388.2.2 窗體控件屬性1388.2.3 常用的窗體控件1398.3 窗體的菜單1548.4 鼠標(biāo)鍵盤事件1558.4.1 鼠標(biāo)操作1558.4.2 鍵盤操作1578.5 對話框控件1588.5.1 使用MessageBox對話框1588.5.2 使用FontDialog對話框1598.5.3 使用ColorDialog對話框1618.5.4 使用FolderBrowserDialog對話框1628.6 SDI和MDI應(yīng)用程序1638.7 小結(jié)1658.8 習(xí)題165第9章 GDI+1669.1 GDI+概述1669.2 C#的圖形繪制結(jié)構(gòu)和類1669.2.1 常用繪圖結(jié)構(gòu)1669.2.2 Graphics類1679.2.3 Pen類1689.2.4 Brush類及Brush的派生類1699.2.5 Color類1709.2.6 Font 類1719.3 繪制圖形1719.3.1 繪制直線1719.3.2 繪制矩形1729.3.3 繪制圓和橢圓1739.3.4 繪制文本1739.3.5 繪制圓弧1759.3.6 繪制曲線1759.3.7 繪制多邊形1759.3.8 繪制圖標(biāo)1769.3.9 繪制路徑1769.3.10 繪制扇形1769.4 填充圖形和清除方法1779.5 位圖處理1789.6 坐標(biāo)變換1789.7 Paint事件1819.8 GDI+應(yīng)用實(shí)例1839.9 小結(jié)1929.10 習(xí)題1939.11 綜合實(shí)例項(xiàng)目-小助手1939.11.1 項(xiàng)目分析1939.11.2 項(xiàng)目設(shè)計(jì)1939.11.3 項(xiàng)目實(shí)現(xiàn)195第10章 文件管理20310.1 System.IO命名空間概述20310.2 Windows文件系統(tǒng)20410.2.1 Directory類與DirectoryInfo類20510.2.2 File類與FileInfo類20710.2.3 Path類21010.2.4 文件屬性21210.3 讀寫文件21310.3.1 流概述21310.3.2 讀寫文本文件21410.3.3 讀寫二進(jìn)制文件21610.4 文件對話框21810.4.1 打開文件對話框21910.4.2 保存文件對話框22010.5 小結(jié)22110.6 習(xí)題222第11章 線程22311.1 線程概述22311.2 System.Threading.Thread類22411.3 線程狀態(tài)與線程優(yōu)先級22611.3.1 線程狀態(tài)22611.3.2 線程優(yōu)先級22711.4 線程間通信22911.5 線程池23011.6 線程鎖23211.6.1 線程同步23211.6.2 死鎖23511.7 進(jìn)程操作23811.8 小結(jié)23911.9 習(xí)題24011.10 綜合項(xiàng)目-幸運(yùn)之星24011.10.1 項(xiàng)目分析24011.10.2 項(xiàng)目設(shè)計(jì)24011.10.3 項(xiàng)目實(shí)現(xiàn)241第12章 ADO.NET24712.1 ADO.NET簡介24712.2 ADO.NET的結(jié)構(gòu)24712.2.1 數(shù)據(jù)提供者24812.2.2 數(shù)據(jù)集24912.3 使用ADO.NET對象連接SQL Server數(shù)據(jù)庫25012.3.1 DataReader讀取數(shù)據(jù)25012.3.2 數(shù)據(jù)集讀取數(shù)據(jù)25212.3.3 設(shè)置連接屬性25312.4 使用數(shù)據(jù)綁定控件25712.5 更新數(shù)據(jù)庫25912.5.1 添加數(shù)據(jù)記錄25912.5.2 修改數(shù)據(jù)記錄26112.5.3 刪除數(shù)據(jù)記錄26212.6 小結(jié)26412.7 習(xí)題264第13章 WEB編程26613.1 ASP.NET概述26613.2 ASP.NET網(wǎng)頁26713.3 服務(wù)器控件27013.3.1 HTML服務(wù)器控件27013.3.2 Web服務(wù)器控件27113.4 驗(yàn)證控件27313.5 用戶控件27613.6 內(nèi)置對象27713.7 使用ADO.NET顯示數(shù)據(jù)庫信息28313.8 使用AJAX28513.9 小結(jié)28713.10 習(xí)題28713.11 綜合實(shí)例項(xiàng)目-圖書管理系統(tǒng)28913.11.1 項(xiàng)目分析28913.11.2 項(xiàng)目設(shè)計(jì)28913.11.3 項(xiàng)目實(shí)現(xiàn)293參考文獻(xiàn)301

章節(jié)摘錄

  前面介紹了為了做到線程同步而進(jìn)行鎖定對象的情況,但是如果用不好線程鎖的話,反倒可能引起線程間的死鎖問題?! ∷梨i是指兩個(gè)或多個(gè)進(jìn)程(或線程)在執(zhí)行過程中,因爭奪某項(xiàng)資源而造成的一種互相等待的現(xiàn)象,若不強(qiáng)制終止它們,它們將一直等待下去。這時(shí)稱系統(tǒng)處于死鎖狀態(tài)或系統(tǒng)內(nèi)產(chǎn)生了死鎖情況,這些一直在互相等待的進(jìn)程稱為死鎖進(jìn)程。死鎖對于操作系統(tǒng)來說是個(gè)非常嚴(yán)重的問題,因?yàn)樗梨i一般都會引起操作系統(tǒng)的崩潰。對于編程人員來說,一定要避免引起死鎖?! ∫环N情形,發(fā)生死鎖的線程都在等待被其他線程占用并堵塞了的資源。例如,如果線程A鎖住了資源1并等待申請資源2,而線程B則鎖住了資源2并等待其他線程釋放資源1,這樣兩個(gè)線程就發(fā)生了死鎖?! ∮?jì)算機(jī)系統(tǒng)中,如果操作系統(tǒng)的資源分配策略不當(dāng),更常見的可能是編程人員的程序有問題,就會導(dǎo)致進(jìn)程因競爭資源不當(dāng)而產(chǎn)生死鎖的現(xiàn)象?! ‘a(chǎn)生死鎖的主要原因如下?! ?)系統(tǒng)內(nèi)資源不夠所有進(jìn)程(線程)使用。2)進(jìn)程問執(zhí)行的順序不合適。3)資源分配策略不當(dāng)。  如果系統(tǒng)資源相對充足,進(jìn)程的資源申請都能夠得到及時(shí)滿足;出現(xiàn)死鎖的可能性就很低;否則進(jìn)程間就會因爭奪有限的資源而陷入死鎖。進(jìn)程的運(yùn)行順序與速度不同,也可能產(chǎn)生死鎖?! ‘a(chǎn)生死鎖的必要條件如下。  1)資源互斥:某個(gè)資源每次只能被一個(gè)進(jìn)程使用。  2)請求與保持:一個(gè)進(jìn)程因請求資源而陷入等待時(shí),對已申請到的資源保持不放?! ?)不剝奪條件:進(jìn)程己獲得的資源,在未使用完之前,系統(tǒng)不能強(qiáng)行剝奪?! ?)循環(huán)等待:若干進(jìn)程之間形成一種頭尾相接的相互循環(huán)等待申請資源。

圖書封面

評論、評分、閱讀與下載


    C#程序設(shè)計(jì)實(shí)用教程 PDF格式下載


用戶評論 (總計(jì)0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7