C 中的字段和屬性詳細區別

2021-10-04 19:14:07 字數 657 閱讀 6914

1、二者之間的聯絡

在c#中,對於一些公有字段我們可以無限制的訪問,但是這樣做的後果是,我們可能錯誤的修改了字段中的值!使得資料不準確,於是就出現了屬性,屬性中的get和set解決了訪問字段時候出現的問題!

2、屬性的優點

(1)屬性可以保證資料安全

由於屬性中有set和get,set負責屬性的寫入工作,get負責屬性的讀取工作!所以就出現了,唯讀屬性、既可讀又可寫屬性,還有只寫屬性!

例項:計程車

有乙個ticket類,有乙個**屬性,**的單價是隨著行駛距離的增加而變化的,是有一定的比例的關係的!

如:0-100公里,票價不打折

101-200公里 總額打9.5折

此時的9.5折是私有的,就是說是我這個類定的,就是說計程車公司定的,別人是不可以進行修改的,要是修改也只能是在我自己的這個類中相對應的字段進行修改!

int _distance;

private double _price;

public double price

else

}

}

此時的**的屬性就是唯讀的!

(2)屬性沒有儲存資料的功能

屬性沒有儲存資料的功能,資料都存在欄位中,所以只有修改欄位的資料才能更改資料,修改屬性的值沒用。

C 中屬性和一般欄位的區別

c 中可以給類的字段設定屬性 屬性中可以設定讀寫操作 如果沒有設定屬性,則只有public的字段才能讀寫,而且不能為對讀寫的值進行操作 而屬性可以對即將讀寫的字段進行操作 比如student類中的stuid欄位的屬性stuid 在stuid中的get與set中就可以對讀寫的值進行操作,例如 publ...

C 欄位和屬性,索引器的區別

一 c 欄位和屬性的區別與介紹 自字段 訪問許可權 值型別 欄位名 例如 private int number 屬性 public int number set 欄位和屬性的區別。例子說明 如果我們有乙個公有字段 如成績的分數 public int score 我們可以在類的外部,訪問,修改字段。但...

C 字段,屬性和屬性封裝字段

c 類成員包括 字段,屬性和方法。對於日常對於乙個類我們新增成員時會有幾種方法。如對於乙個person 類,我們對於其中乙個成員 性別 gender 進行定義,可以寫成 1,public string gender 2,public string gender 3,private string ge...