C#面向?qū)ο缶幊?三)屬性和索引

上傳人:fgh****35 文檔編號(hào):248188520 上傳時(shí)間:2024-10-22 格式:PPT 頁數(shù):13 大?。?69.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
C#面向?qū)ο缶幊?三)屬性和索引_第1頁
第1頁 / 共13頁
C#面向?qū)ο缶幊?三)屬性和索引_第2頁
第2頁 / 共13頁
C#面向?qū)ο缶幊?三)屬性和索引_第3頁
第3頁 / 共13頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《C#面向?qū)ο缶幊?三)屬性和索引》由會(huì)員分享,可在線閱讀,更多相關(guān)《C#面向?qū)ο缶幊?三)屬性和索引(13頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、,*,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,C#,面向?qū)ο缶幊?(,三,),屬性和索引,berry,博客:,5.2,屬性,5.3.1 get,訪問器,5.3.2 set,訪問器,屬性,在設(shè)計(jì)一個(gè)類時(shí),總是要隱藏一些私有成員,將這些成員設(shè)置成,private,,禁止類外面的方法直接訪問這些成員,要訪問這些私有的成員可以通過一些公有的方法。,例:用公有方法訪問私有成員,using System;,class Empolyee,double salary=100.00

2、;,public double AccessSalary(),return salary;,class Mainclass,public static void Main(),Empolyee e=new Empolyee();,double s=e.AccessSalary();,Console.WriteLine(“s=0”,s);,C#,給我們提供了一種更理想的方法,就是屬性,通過屬性讓用戶像訪問公有成員字段一樣來訪問類的私有成員字段。屬性機(jī)制中有兩個(gè)屬性訪問函數(shù),get,和,set,,即屬性的讀寫是由,get,和,set,來實(shí)現(xiàn)的。如果沒有,set,方法則表示屬性是只讀(get)的,如

3、果沒有,get,方法則表示屬性是只寫(set)的。,在類中定義屬性的格式:,修飾符 類型名 屬性名,get ,set ,5.3.1 get,訪問器,private string id;/,定義了一個(gè)私有字段,id,public string Id /,定義了一個(gè)屬性,Id,,注意不能與私有字段同名,get /,屬性中的,get,訪問器,return id;,有了上述的屬性定義后,我們就可以通過直接訪問公有的,Id,屬性,來實(shí)現(xiàn)對(duì)私有字段,id,的訪問。,get,訪問器完整例子,using System;,public class Student,private string name;,pri

4、vate string number;,public Student(string na,string nu),name=na;number=nu;,public string Name,get return name;,public string Number,get return number;,public class AppMain,public static voic Main(),Student s1=new Student(“zhaojing”,”200435672);,Console.WriteLine(“0”,s1.Name,);,Console.WriteLine(“0”,

5、s1.Number,);,5.3.2 set,訪問器,private string id;/,定義了一個(gè)私有字段,id,public string Id /,定義了一個(gè)屬性,Id,,注意不能與私有字段同名,get /,屬性中的,get,訪問器,return id;,set /,增設(shè)的,set,訪問器,id=value;,set,訪問器意味著可以對(duì)成員的值進(jìn)行寫操作。如果我們對(duì)屬性,Id,賦值,就意味著調(diào)用了,set,訪問器,如,s.Id=“zhanghua”;(s,是類實(shí)例)。,屬性的訪問,屬性的訪問實(shí)際上就是調(diào)用相應(yīng)的,set,或,get,方法。,s.Id=“zhanghua”,表示對(duì),s,

6、變量的屬性進(jìn)行設(shè)置,相當(dāng)與調(diào)用,set_Id,方法;而,Console.WriteLine(s.Id),表示對(duì),s,變量的屬性進(jìn)行獲取,相當(dāng)于調(diào)用,get,方法。,編譯器將自動(dòng)產(chǎn)生相應(yīng)的方法。,如對(duì)于上面的,Id,屬性,產(chǎn)生的方法為,void set_Id(string value);,string get_Id();,屬性和域的選擇,屬性可以實(shí)現(xiàn)只讀或只寫;屬性還可以返回一些經(jīng)過計(jì)算或處理過的數(shù)據(jù);屬性的實(shí)現(xiàn)實(shí)際上是方法的實(shí)現(xiàn),可以具有方法的一些特點(diǎn)。,在,C#,中,屬性和域的選擇一般采取以下原則:,1,、若在類的內(nèi)部記錄事物的狀態(tài)信息,用域變量;,2,、域變量一般用,private,修飾,

7、以防止對(duì)外使用;,3,、對(duì)外公布事物的狀態(tài)信息,則使用屬性;,4,、屬性一般與一個(gè)域變量或幾個(gè)域變量有關(guān)。,5.3,索引,在數(shù)組中我們可以通過下標(biāo)來方便地訪問數(shù)組中的元素,索引器可以讓我們把對(duì)象當(dāng)成數(shù)組一樣來方便地訪問,即可以是對(duì)象能用下標(biāo)來得到一個(gè)值。,class Myclass,public object this int index,get,.,set,.,定義以后的使用:,Myclass mc=new Myclass();,/,生成一個(gè)實(shí)例,mc,mc0=object1;,/,訪問類型為,object,的私有成員數(shù)組的第一個(gè)值,Console.WriteLine(“0”,mc0);,/

8、,讀出,mc,中私有數(shù)組的第一個(gè)值,索引的定義,索引的定義與屬性類似,也有,get,和,set,方法,但是沒有屬性名字,而是用,this,表示索引。,使用參數(shù)列表來表示使用索引的參數(shù),至少需要一個(gè)參數(shù)。,索引的使用是使用放括號(hào),,如,mc0,即 對(duì)象名,參數(shù),class Myclass,public object this int index,get,.,set,.,索引使用舉例:,假設(shè)有一個(gè)數(shù)組,其中保存了公司職員的姓名和工資,利用一個(gè)索引來輸出公司職員的信息。,using System;,class EmployeeName,private string name;,public Empl

9、oyeeName(),name=new string“zhang”,”li”,”wang”;,public string this int index1,get return nameindex1;,set nameindex1=value;,class EmployeeSalary,private double salary;,public EmployeeSalary(),salary=new double,5000,3800,2900;,public double thisint index2,get return salaryindex2;,set salaryindex2=value;,定義索引器訪問員工姓名,定義索引器訪問員工工資,class AppMain,public static void Main(),EmployeeName en=new EmployeeName();,EmployeeSalary es=new EmployeeSalary();,for(int i=0;i3;i+),Console.WriteLine(“,姓名:,0,工資:,1”,eni,esi,);,利用索引器輸出員工信息,總結(jié):利用索引器可以把對(duì)象 當(dāng)作數(shù)組來訪問(實(shí)際訪問的是對(duì)象內(nèi)部的私有成員數(shù)組),從而提高代碼的可讀性。,

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!