本書基于控制臺應用程序,介紹C#程序設計的基礎知識。全書共12章,內(nèi)容包括VisualStudio2015集成開發(fā)環(huán)境、C#語言基礎知識、程序控制結(jié)構(gòu)、異常處理、方法編程、類和對象、繼承與多態(tài)、接口類型、數(shù)組與集合、委托與事件、對象的序列化與反序列化,后是綜合實踐模塊,要求學生設計并實現(xiàn)通訊錄應用程序。本書采選了作者積累多年的教學素材,章節(jié)內(nèi)容層層遞進,涵蓋了信息技術(shù)類專業(yè)后續(xù)開發(fā)設計類專業(yè)課程的基礎知識,實例豐富、解析透徹,章節(jié)練習題充足、難度適中,力求符合教師教學和學生自學的需要。本書可作為高職高專院校和高等技術(shù)型院校信息技術(shù)及其相關專業(yè)的教材,也可作為軟件開發(fā)人員及其他程序設計愛好者的自學參考書或培訓教程。
C#是微軟發(fā)布的一種面向?qū)ο蟮、運行于NETFramework之上的高級程序設計語言。
2015年7月,隨著VisualStudio2015的發(fā)布,C#以其可支持Windows應用開發(fā)、跨平臺移動開發(fā)、Web和云開發(fā)等特性,成為目前最流行的程序設計語言之一。
“C#程序設計”是高職高專院校和高等技術(shù)型院校信息技術(shù)類專業(yè)普遍開設的課程,其總體目標是使學生掌握C#語言的基本語法,理解面向?qū)ο蟮某绦蛟O計思想,學會使用NETFramework的常用基礎類進行程序設計,掌握使用C#語言進行面向?qū)ο缶幊痰募夹g(shù)與方法,能夠用所學的編程技術(shù)開發(fā)具有一定復雜程度的控制臺應用程序,并為后續(xù)學習相關的應用程序設計課程打下良好基礎。
全書共12章,內(nèi)容簡要介紹如下:
第1章介紹NETFramework、VisualStudio2015集成開發(fā)環(huán)境以及第一個控制臺應用程序。
第2章介紹C#語言基礎知識,包括值類型與引用類型、數(shù)據(jù)類型轉(zhuǎn)換、運算符和表達式、枚舉與結(jié)構(gòu)類型。
第3章介紹控制流程語句的應用、窮舉法、數(shù)組初步,并提供鞏固訓練內(nèi)容,讓初學者得以有緩沖的機會,讓他們有時間更扎實地掌握C;A知識與控制語句的應用。
第4章介紹異常處理機制,包括異常處理語句的使用,以及認識異常與異常類。
第5章介紹方法的定義與使用,其中包括了遞歸方法,并提供鞏固訓練內(nèi)容。
第6章介紹類和對象,包括類成員的可訪問性、構(gòu)造方法、屬性、this關鍵字、靜態(tài)成員及只讀字段等。
第7章介紹繼承與多態(tài),包括基類成員在派生類中的可見性、派生類的構(gòu)造方法、改寫基類對象的行為,以及抽象類與抽象方法。
第8章介紹接口,包括接口的聲明與實現(xiàn)、IComparable接口與IComparer接口的使用、自定義泛型類及其類型參數(shù)約束。
第9章介紹數(shù)組與集合,包括二維數(shù)組、IEnumerator<T>、IEnumerable<T>、ICollection<T>等類庫中常用的集合接口,以及Dictionary<TKey,TValue>對象與List<T>對象的使用等。
第10章介紹委托與事件,包括委托類型的聲明與使用,以及事件的定義、引發(fā)與處理過程。
第11章介紹對象的序列化與反序列化,還介紹了文件、文件夾以及文本文件的操作。
第12章是綜合實踐模塊,內(nèi)容是關于通訊錄的設計與實現(xiàn)。通過該項目的實踐,初學者可融會貫通前述章節(jié)的知識,提高程序設計的綜合能力。
本書編寫特點如下:①精心選取典型實例,分析透徹,解析明了,突出重點;②代碼詳C#程序設計教程細,注釋豐富,可讀性強,可操作性強,便于自學;③涵蓋C#的主要內(nèi)容,滿足信息技術(shù)類專業(yè)后續(xù)課程的需要;④章節(jié)設計遵循規(guī)律,層層遞進,充分考慮了學習要求與教學要求;⑤章節(jié)學習目標明確,課后練習豐富。
本書由溫州職業(yè)技術(shù)學院的倪步喜擔任主編,并負責統(tǒng)稿、定稿。溫州職業(yè)技術(shù)學院的張?zhí)K豫和項道東參與了本書的編寫。
由于編者水平有限,書中錯誤及不當之處在所難免,懇請廣大讀者批評指正。
編 者
目 錄
前言
第1部分 基礎模塊
第1章 初識C# 2
1.1 .NETFramework 2
。.1.1 .NETFramework概述2
。.1.2 .NETFramework的結(jié)構(gòu)3
1.2 C#語言簡介6
1.3。郑椋螅酰幔欤樱簦酰洌椋铮玻埃保导砷_發(fā)環(huán)境6
1.3.1。郑椋螅酰幔欤樱簦酰洌椋铮玻埃保瞪鐓^(qū)版的安裝7
。.3.2 熟悉C#編程環(huán)境8
1.4 第一個控制臺應用程序13
本章小結(jié)18
習題18
第2章 C;A20
2.1。茫8攀觯玻
。.1.1 簡單示例———保存年齡20
。.1.2 值類型與引用類型21
。.1.3 C#中的值類型22
。.1.4。茫V械囊妙愋停玻
。.1.5。茫V械膬(nèi)置類型表23
2.2 數(shù)據(jù)類型24
。.2.1 常量與變量24
2.2.2 整數(shù)類型25
。.2.3 實數(shù)類型26
2.2.4 控制臺的輸入與輸出27
。.2.5 字符類型30
2.2.6 布爾類型30
。.2.7 字符串類型33
2.2.8 對象類型34
。.2.9 隱式類型34
2.3 數(shù)據(jù)類型轉(zhuǎn)換35
2.3.1 隱式轉(zhuǎn)換35
C#程序設計教程
。.3.2 裝箱轉(zhuǎn)換37
2.3.3 顯式轉(zhuǎn)換37
。.3.4 使用Convert類顯式轉(zhuǎn)換數(shù)據(jù)39
2.3.5 數(shù)據(jù)類型轉(zhuǎn)換方法ToString() 39
。.3.6 使用方法Parse()顯式轉(zhuǎn)換數(shù)據(jù)40
2.4 運算符和表達式41
。.4.1 算術(shù)運算符41
。.4.2 邏輯運算符42
2.4.3 三元條件運算符44
。.4.4 賦值運算符44
2.4.5 二進制位運算符44
。.4.6 其他運算符45
2.4.7 運算符的優(yōu)先級46
。.4.8 表達式中常用的數(shù)學函數(shù)47
2.5 自定義枚舉類型49
。.5.1 定義枚舉類型49
。.5.2 枚舉類型作為位標志49
2.6 自定義結(jié)構(gòu)類型51
2.6.1 定義結(jié)構(gòu)類型51
。.6.2 使用結(jié)構(gòu)變量及成員52
本章小結(jié)53
習題53
第3章 控制流程56
3.1 分支結(jié)構(gòu)56
3.2 循環(huán)結(jié)構(gòu)64
3.3 鞏固訓練71
3.4 窮舉法73
本章小結(jié)77
習題77
第4章 異常處理81
4.1 認識異常81
4.2 異常類82
4.3 異常處理機制83
4.4 自定義異常類87
本章小結(jié)89
習題89
·Ⅵ
目 錄
第5章 方 法91
5.1 定義方法91
5.1.1。螅簦幔簦椋阈揎椃梗
。.1.2 方法返回值類型94
。.1.3 方法的參數(shù)95
。.1.4 重載方法104
5.2 鞏固訓練105
5.3 遞歸方法107
5.3.1 設計遞歸算法107
。.3.2 遞歸方法的執(zhí)行過程108
本章小結(jié)110
習題110
第6章 類和對象112
6.1 類和對象概述112
6.2 定義對象的類113
6.3 使用對象113
6.4 類成員的可訪問性114
6.4.1。穑酰猓欤椋阈揎椃保保
。.4.2 private修飾符116
。.4.3。椋睿簦澹颍睿幔煨揎椃保保
6.5 使用構(gòu)造方法構(gòu)造對象120
6.6 析構(gòu)方法123
6.7 用屬性封裝類的數(shù)據(jù)123
。.7.1 聲明只讀屬性124
。.7.2 聲明只寫屬性125
。.7.3 聲明可讀寫屬性126
6.8 使用this關鍵字127
6.9 類的靜態(tài)成員131
6.9.1 實例成員131
。.9.2 靜態(tài)成員131
。.9.3 訪問靜態(tài)成員131
。.9.4 靜態(tài)構(gòu)造方法132
6.10 只讀字段137
本章小結(jié)138
習題138
第7章 繼承與多態(tài)141
7.1 繼承與多態(tài)概述141
·Ⅶ
C#程序設計教程
7.2 聲明派生類141
7.3 基類成員在派生類中的可見性142
7.4 派生類的構(gòu)造方法143
7.5 改寫基類對象的行為152
7.6 抽象類與抽象方法156
本章小結(jié)162
習題162
第8章 接口164
8.1 接口的聲明與實現(xiàn)164
。.1.1 理解接口164
。.1.2 聲明接口165
。.1.3 實現(xiàn)接口165
8.1.4 接口與抽象類的區(qū)別168
8.2 使用IComparable接口172
8.3 使用System.Collections.IComparer接口175
。.3.1 方法System.Array.Sort(Array,IComparer) 175
。.3.2 System.Collections.IComparer接口175
。.3.3 IComparer接口用于冒泡排序178
8.4 自定義泛型類179
。.4.1 泛型概述179
8.4.2 自定義泛型類180
。.4.3 自定義泛型中的類型參數(shù)約束181