C#基礎(chǔ)知識(shí)全面介紹
C#基礎(chǔ)知識(shí)之.NetFramework簡(jiǎn)介
.netframework運(yùn)行于操作系統(tǒng)之上,提供良好的跨語言特性。
.netframework包含兩個(gè)內(nèi)容:公共語言運(yùn)行時(shí)(CLR)和類庫集(FCL)
MSIL微軟中間語言。當(dāng)編譯.net支持的語言編寫的代碼的時(shí)候,輸出的代碼為MSIL
CLR又包含:通用語言規(guī)范(CLS:保證語言互操作性的一組規(guī)則)和公共類型系統(tǒng)(CTS:包含了.net支持的各語言間兼容的數(shù)據(jù)類型和功能)
C#中的變量和常量
C#中的基本數(shù)據(jù)類型:
值類型和引用類型
值類型:簡(jiǎn)單類型、結(jié)構(gòu)類型和枚舉類型。
簡(jiǎn)單類型:整數(shù)類型、浮點(diǎn)類型、小數(shù)類型(decimal)和布爾類型等
sbyte是有符號(hào)的,相當(dāng)java的byte型,范圍-128~127
C#中byte是無符號(hào)的,范圍0~255
C#基礎(chǔ)知識(shí)之變量命名方法:
帕斯卡命名法和駱駝命名法
帕斯卡命名法:如果有多個(gè)單詞組成,每個(gè)單詞首字母大寫
駱駝命名法:如果有多個(gè)單詞組成,第一個(gè)單詞全部小寫,后面的單詞大寫
C#中的常量:const與readonly兩種
const聲明的常量:叫靜態(tài)常量,必須聲明時(shí)就初始化,且只能用常數(shù)值初始化
readonly聲明的常量:叫動(dòng)態(tài)常量,可以在聲明時(shí)不初始化,只能在構(gòu)造函數(shù)中初始化,但必須每個(gè)構(gòu)造函數(shù)中都要初始化;而且可以使用變量值初始化
- classTest
- {
- constfloatPI=3.1416f;//常量命名:全部大寫
- readonlyfloatG;
- publicTest()
- {
- G=9.80F;
- }
- publicTest(floatg)//每個(gè)構(gòu)造函數(shù)中都要初始化;而且可以使用變量值初始化
- {
- G=g;
- }
- }
C#中的裝箱和拆箱
裝箱:值類型轉(zhuǎn)換成有引用類型
拆箱:引用類型轉(zhuǎn)換成值類型
值類型:存在棧中
引用類型:在堆中存放對(duì)象的地址(即引用),對(duì)象本身存放在棧中
拆裝箱允許值類型和引用類型相互處理
C#語法
Switch()括號(hào)中可以是int ,char和string ,switch語句中的case語句冒號(hào)后什么都不寫,可以不寫break,其他情況一定要寫break,否則報(bào)錯(cuò)
數(shù)組:五種聲明方式
- int[]array;
- array=newint[2];
- //第二種聲明方式
- int[]array1=newint[2];
- //第三種聲明方式
- int[]array2={1,2,3};
- //第四種聲明方式
- int[]array3=newint[]{1,2,3};
- //第五種聲明方式
- int[]array4=newint[3]{1,2,3};
- //數(shù)組大小也可以是變量
- intcount=3;
- int[]arr=newint[count];
C#基礎(chǔ)知識(shí)之枚舉:用有意義的字符去訪問數(shù)據(jù)
- publicenumContry:long//指定枚舉類型,必須是整型,不寫為int型
- {
- Pacific,//第一個(gè)未付值,默認(rèn)為零
- China=1860,
- Japan,
- US=1901,
- Canada
- }
C#中的面向?qū)ο?/STRONG>
析構(gòu)函數(shù):函數(shù)名與構(gòu)造函數(shù)名一樣,~函數(shù)名(),不接受參數(shù),由垃圾回收器自動(dòng)調(diào)用(GC.Collect()調(diào)用垃圾回收器)
virtual關(guān)鍵字:C#中,子類要重寫父類的方法,必須把父類的方法標(biāo)識(shí)為virtual(虛擬的),同時(shí)重寫方法用override修飾
new 關(guān)鍵字:new關(guān)鍵字:在子類中定義的一個(gè)和父類方法簽名一樣,但是個(gè)全新的方法。并非重寫父類的方法。
base關(guān)鍵字:用base關(guān)鍵字調(diào)用父類的方法
訪問修飾符:
public 公有的,
internal 在一個(gè)項(xiàng)目中的,
protected有父子關(guān)系的類,
private僅所屬類的成員
注意:如果有一個(gè)類既繼承類又實(shí)現(xiàn)接口,類名要寫在接口名前面。
屬性,索引器,委托,事件
屬性:訪問修飾一般為public,首字母大寫。屬性內(nèi)有g(shù)et和set訪問器,get內(nèi)必須要有return,set內(nèi)有value關(guān)鍵字,代表從外部接受的值。
索引器:索引器的作用:像處理數(shù)組一樣去處理類的對(duì)象。
- publicclassStudent
- {
- privatestring[]obj=newstring[10];
- //this關(guān)鍵字在這里代表每一個(gè)類的對(duì)象,[]中整數(shù)是指通過下標(biāo)訪問
- publicstringthis[intindex]//此是可以通過索引號(hào)去訪問每一個(gè)類的成員
- {
- get
- {
- returnobj[index];
- }
- set
- {
- if(value!=null)
- obj[index]=value;
- }
- }
- staticvoidMain(string[]args)
- {
- Studentstucollection=newStudent();
- stucollection[0]="柯南";
- stucollection[1]="小五郎";
- stucollection[5]="怪盜基德";
- }
- }
C#基礎(chǔ)知識(shí)之委托:相當(dāng)于函數(shù)指針,可使程序在運(yùn)行是再指定具體要運(yùn)行的方法。
(1) 定義委托:Public delegate int Call()
(2) 實(shí)例化委托:objcall=new Call(方法名)
(3) 調(diào)用委托:objcall();
【編輯推薦】