溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C#基礎(chǔ)知識(shí)有哪些

發(fā)布時(shí)間:2021-12-01 11:41:38 來(lái)源:億速云 閱讀:125 作者:小新 欄目:編程語(yǔ)言

這篇文章主要為大家展示了“C#基礎(chǔ)知識(shí)有哪些”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“C#基礎(chǔ)知識(shí)有哪些”這篇文章吧。

1 、C#中數(shù)據(jù)類型的分類:

(1)值類型:它存儲(chǔ)在內(nèi)存的堆棧中,表示實(shí)際數(shù)據(jù)。包括:基本數(shù)據(jù)類型(字符串除外)、結(jié)構(gòu)、枚舉。

(2)引用類型:它存儲(chǔ)在內(nèi)存的堆中,表示對(duì)象地址。包括:字符串、數(shù)組、類、接口、委托。

2、 C#聲明常量的聲明方式:

(1)靜態(tài)常量(const):< 訪問(wèn)修飾符> 數(shù)據(jù)類型 常量名稱=常量值

(2)動(dòng)態(tài)常量(readonly):

C#基礎(chǔ)知識(shí)之靜態(tài)常量(const)   

定義:聲明的同時(shí)要設(shè)置常量值。

類型限制:首先類型必須屬于值類型范圍,且其值不能通過(guò)new來(lái)進(jìn)行設(shè)置。

對(duì)于類對(duì)象而言:對(duì)于所有類的對(duì)象而言,常量的值是一樣的。

內(nèi)存消耗:無(wú)。

綜述:性能要略高,無(wú)內(nèi)存開(kāi)銷,但是限制頗多,不靈活。

C#基礎(chǔ)知識(shí)之動(dòng)態(tài)常量(readonly)

定義:聲明的時(shí)候可以不需要進(jìn)行設(shè)置常量值,可以在類的構(gòu)造函數(shù)中進(jìn)行設(shè)置。

類型限制:沒(méi)有限制,可以用它定義任何類型的常量。

對(duì)于類對(duì)象而言:對(duì)于類的不同對(duì)象而言,常量的值可以是不一樣的。

內(nèi)存消耗:要分配內(nèi)存,保存常量實(shí)體。

綜述:靈活,方便,但是性能略低,且有內(nèi)存開(kāi)銷。

3 、 裝箱和拆箱:

(1)裝箱:將值類型轉(zhuǎn)換成引用類型。(is as)

(2)拆箱:將引用類型轉(zhuǎn)換成值類型。

4 、Typeof運(yùn)算符:

C#沒(méi)有自己的內(nèi)庫(kù),但是它共享了.Net的內(nèi)庫(kù)。C#中的基本數(shù)據(jù)類型只是.Net基本數(shù)據(jù)類型的別名而已。獲得系統(tǒng)原型對(duì)象的類型。

5、訪問(wèn)域,訪問(wèn)修飾符

(1)訪問(wèn)域:public、 private 、internal、 protected、protectedinternal

(2)訪問(wèn)修飾符:partial、、sealed、virtual、override 、abstract 、new、 extern、 static

6 、構(gòu)造函數(shù)和析構(gòu)函數(shù):

(1)構(gòu)造函數(shù):與類同名,無(wú)返回值??梢灾剌d。

(2)析構(gòu)函數(shù):與類同名,無(wú)返回值。不能重載。一個(gè)類只有一個(gè)析構(gòu)函數(shù)。由垃圾回收器自動(dòng)調(diào)用。

7、構(gòu)造函數(shù)調(diào)用:

(1)調(diào)用基本構(gòu)造函數(shù)::base() 或:base(string name,int age)

(2)調(diào)用基類普通方法: base.基類方法名()

8 、方法調(diào)用:

(1)實(shí)例對(duì)象調(diào)用:類名.方法名([參數(shù)列表])

(2)靜態(tài)類調(diào)用:類名.方法名([參數(shù)列表])

9 、方法重載與方法重寫:

(1)方法重載:在同一個(gè)類中的方法,返回類型相同,方法名相同,方法簽名不同。

(2)方法重寫:在基類與子類中,基類方法是:virtual、abstract 時(shí),方可在子類中用override重寫基類方法。

10、OOP編程三大特點(diǎn):

(1)封裝:

(2)繼承:

(3)多態(tài):多態(tài)的兩種表現(xiàn)形式:方法重載和方法重寫。

11、抽象類和接口的區(qū)別與聯(lián)系:

C#基礎(chǔ)知識(shí)之抽象類:至少含有一個(gè)抽象方法的類,不能被實(shí)例化。包含屬性、方法聲明、功能定義和實(shí)現(xiàn)。

C#基礎(chǔ)知識(shí)之接口:接口是一個(gè)特殊的抽象類。僅限于對(duì)方法、索引器、及屬性的聲明。

12 、委托:

(1)它包含對(duì)方法而不是方法名的引用,使用委托可以在運(yùn)行時(shí)動(dòng)態(tài)設(shè)定要調(diào)用的方法。委托將名稱與方法的定義連接起來(lái)。

(2)委托的作用:定義事件句柄(EventHander),目的:自定義事件。委托實(shí)際上是函數(shù)的指針,它能引用函數(shù)。

(3)使用委托的步驟:

a 定義委托:[訪問(wèn)修飾符] delegate 返回類型委托名()

b 實(shí)例化委托:使其指向某個(gè)方法。

c 使用委托:

13、事件:

(1)事件(Event):是一種函數(shù)成員,是類和對(duì)象發(fā)出的消息。以通知發(fā)生了某個(gè)特定的行為或某個(gè)特定的條件已經(jīng)成立。

定義事件:

[訪問(wèn)修飾符] event 委托名 事件名

定義事件時(shí),發(fā)行者首先定義委托,然后根據(jù)委托定義事件。

Public delegate void delegateMe()  //定義委托

public event delegateMe eventMe; //定義事件

(2)訂閱事件:只是添加了一個(gè)委托,事件引發(fā)時(shí)該委托將調(diào)用一個(gè)方法。

訂閱事件:

eventMe+=new delegateMe(objA.Method)      //objA.Method方法訂閱了事件eventMe

14 、控件與組件:

(1)控件:可視化界面組件稱為控件。(可視化的類),所有Windows窗體都是從System.Windows.Forms.Control類派生出來(lái)的類。

(2)組件:不含可視化的界面。

以上是“C#基礎(chǔ)知識(shí)有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI