我們先來寫乙個類person,欄位為:name、age、***,屬性:name、age、***。那麼,成員變數:name、age、***、name、age、***。欄位和屬性,都可以叫做是成員變數。屬性和字段都是用來儲存資料的,但肯定是有不同的(要不然也不會起兩個名字,乾脆叫乙個名算了~)。
public class person
set
}public int age
set
}public string ***
set
}}
字段一般用在類的內部使用,屬性一般供外部類訪問。按照類的設計原則,欄位都是private的,只能在類的內部使用,如果是public的,那麼外部類誰都有可能訪問,對欄位進行破壞性的修改,這是我們不希望看到的,所以字段一定是private的。
屬性想當於是給字段加了乙個保護套,如果想讀這個欄位的值,屬性裡面走的一定是get{},如果想給字段賦值,屬性裡一定走的是set{},那麼程式設計師可以在get{}和set{}中增加一些限制,驗證要賦值的內容,或者讓某個字段只能讀不能賦值(對應該欄位的的屬性只讓它有get{},不寫set{})。對於外部使用者來說只能夠使用它,不能控制它,如何控制操作是由類自身決定的(或者說是由程式設計師決定的,嘿嘿~)。
另外,字段值可以用作ref、out引數,而屬性不能。
C 屬性 欄位和成員變數的關係區別
字段一般用在類的內部使用,屬性一般供外部類訪問。按照類的設計原則,欄位都是private的,只能在類的內部使用,如果是public的,那麼外部類誰 都有可能訪問,對欄位進行破壞性的修改,這是我們不希望看到的,所以字段一定是private的。屬性想當於是給字段加了乙個保護套,如果想讀這個欄位的值,屬性...
成員變數 例項變數 屬性之間的關係
首先來區別一下 例項變數 成員變數 的區別 可以看到在介面 inte ce 括號裡面的統稱為 成員變數 例項變數是成員變數中的一種!例項變數的英文翻譯是 instance variable object specificstorage 例項的英文翻譯為 instance manifestation ...
Java中成員變數和屬性之間的關係
有人可能遇到這樣的錯誤,明明在類中定義了某個成員變數,但是系統在執行的時候提示錯誤 屬性xx沒有定義。這是什麼原因呢?大家知道成員變數有多種訪問控制符,通常都應該把成員變數定義成私有的,然後為該成員變數提供set方法和get方法,外界通過set方法和get方法對成員變數進行操作。這樣對外界來說,只有...