C#方法和作用域.ppt

C#方法和作用域.ppt

ID:48181599

大小:95.50 KB

頁數(shù):24頁

時(shí)間:2020-01-18

C#方法和作用域.ppt_第1頁
C#方法和作用域.ppt_第2頁
C#方法和作用域.ppt_第3頁
C#方法和作用域.ppt_第4頁
C#方法和作用域.ppt_第5頁
資源描述:

《C#方法和作用域.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、第5章方法和作用域教學(xué)目標(biāo)本章主要介紹方法的定義、調(diào)用及參數(shù)傳遞,方法的重載。作用域的含意、局部作用域和類作用域。我們將學(xué)會(huì)在程序中如何聲明方法和調(diào)用方法。教學(xué)重點(diǎn)方法的定義和調(diào)用參數(shù)傳遞方法局部作用域和類作用域方法重載System.Math類的使用方法是把一些相關(guān)的語句組織在一起,用于解決某一特定問題的語句塊。方法必須放在類定義,也就是說,方法必須是某一個(gè)類的方法。方法必須先聲明后使用。C#語言中的方法相當(dāng)于其他編程語言(如VB.NET)中的通用過程(Sub過程)或函數(shù)過程(Function過程)。5.1方法和作用域聲明方法最常用的語法格式為:訪問修飾符返回類型方法

2、名(參數(shù)列表){…//方法體}訪問修飾符的含義如表5-1所示:5.1.1方法聲明表5-1:訪問修飾符的含義方法訪問修飾符功能說明public方法的訪問完全沒有限制protected只有本類或繼承自本類的子類(即以本類作父類的類)可以使用internal方法的使用僅限于當(dāng)前項(xiàng)目protectedinternal方法的使用僅限于當(dāng)前項(xiàng)目或者繼承于此類的類private只有類本身存取而已(默認(rèn))按照被調(diào)用的位置,可以分為在方法聲明的類定義中調(diào)用和在方法聲明的類定義外部調(diào)用2種調(diào)用方法。1.在方法聲明的類定義中調(diào)用,實(shí)際上是由類定義內(nèi)部的其他方法成員調(diào)用該方法,其語法格式為:

3、方法名(參數(shù)列表)舉例如下:5.1.2方法調(diào)用2.在方法聲明的類定義外部調(diào)用實(shí)際上是通過類聲明的對象調(diào)用該方法,其語法格式為:對象名.方法名(參數(shù)列表)5.1.2方法調(diào)用在方法的聲明與調(diào)用中,經(jīng)常涉及方法的參數(shù),在方法聲明中使用的參數(shù)叫形式參數(shù)(形參),在調(diào)用方法中使用的參數(shù)叫實(shí)際參數(shù)(實(shí)參)。在調(diào)用方法時(shí),參數(shù)傳遞就是將實(shí)參傳遞給形參的過程。5.1.3參數(shù)傳遞C#中函數(shù)的參數(shù)有4種類型:值參數(shù),不含任何修飾符。引用型參數(shù),以ref修飾符聲明。輸出參數(shù),以out修飾符聲明。數(shù)組型參數(shù),以params修飾符聲明。5.1.3參數(shù)傳遞1.按值傳遞參數(shù)按值的方式傳遞是指當(dāng)把實(shí)

4、參傳遞給形參時(shí),是把實(shí)參的值復(fù)制(拷貝)給形參,實(shí)參和形參使用的是兩個(gè)不同內(nèi)存中的值,所以這種參數(shù)傳遞方式的特點(diǎn)是形參的值發(fā)生改變時(shí),不會(huì)影響實(shí)參的值,從而保證了實(shí)參數(shù)據(jù)的安全。示例:Ex5-2:值參數(shù)傳遞示例。5.1.3參數(shù)傳遞2.按引用傳遞按引用傳遞是指實(shí)參傳遞給形參時(shí),不是將實(shí)參的值復(fù)制給形參,而是將實(shí)參的引用傳遞給形參,實(shí)參與形參使用的是同一個(gè)內(nèi)存中的值。這種參數(shù)傳遞方式的特點(diǎn)是形參的值發(fā)生改變時(shí),同時(shí)也改變實(shí)參的值?;绢愋蛥?shù)按引用傳遞時(shí),實(shí)參與形參前均須使用ref關(guān)鍵字說明。在方法中,引用型參數(shù)通常已經(jīng)初始化。5.1.3參數(shù)傳遞例如Swap方法代碼如下:

5、publicvoidSwap(refstrings1,refstrings2){strings3;s3=s1;s1=s2;s2=s3;}則調(diào)用該方法的語句代碼如下:Swap(refss1,refss2);//在實(shí)參中增加ref關(guān)鍵字。示例:Ex5-3:按引用傳遞5.1.3參數(shù)傳遞類對象參數(shù)總是按引用傳遞的,所以類對象作為參數(shù)時(shí)不需要使用ref關(guān)鍵字。5.1.3參數(shù)傳遞3.輸出型參數(shù)與引用型參數(shù)類似,輸出型參數(shù)也不開辟新的內(nèi)存區(qū)域。與引用型參數(shù)的差別在于:調(diào)用前不需對變量進(jìn)行初始化。一般輸出型參數(shù)用于傳遞方法返回的數(shù)據(jù)。示例:Ex5-45.1.3參數(shù)傳遞作用域也就是作用

6、范圍的意思。它有局部作用域和類作用域之分。5.2作用域什么是局部作用域?在C#中,局部變量被定義在某個(gè)區(qū)塊中。也就是說,某區(qū)塊中定義的變量,只能供這個(gè)區(qū)塊使用,區(qū)塊以外使用則報(bào)錯(cuò)。在方法主體中聲明的變量只具有那個(gè)方法的作用域;一旦方法結(jié)束,它們也會(huì)消失,而且只能由那個(gè)方法內(nèi)部執(zhí)行的代碼來訪問。這些變量稱為局部變量(localvariable),因?yàn)樗鼈兙窒抻诼暶魉鼈兊哪莻€(gè)方法,不能在其他任何方法的作用域中使用。換言之,你不能使用局部變量在不同的方法之間共享信息。5.2.1定義局部作用域什么是類作用域?在類定義體中(但不在某個(gè)方法中)聲明的任何變量都具有那個(gè)類的作用域。

7、在C#語言中,使用字段(field)一詞來描述由一個(gè)類定義的變量。和局部變量不同,可以使用字段在不同的方法之間共享信息。5.2.2定義類作用域如果兩個(gè)標(biāo)識(shí)符同名,而且在同一個(gè)作用域中聲明,就可以說它們重載。方法重載是聲明兩個(gè)以上的同名方法,以實(shí)現(xiàn)對不同數(shù)據(jù)類型的相同處理。方法重載有兩點(diǎn)要求:重載的方法名稱必須相同。重載的方法,其形參個(gè)數(shù)或類型必須不同,否則將出現(xiàn)“已經(jīng)定義了一個(gè)具有相同類型參數(shù)的方法成員”的編譯錯(cuò)誤。5.2.3重載方法例如能同時(shí)處理整型與浮點(diǎn)型數(shù)據(jù)的重載方法:publicvoidSwap(refinta,refintb){…}publ

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。