《c#
中get
、set
的用法》
c# get set用法中,
get是讀取屬性時進行的操作,
set是設定屬性時進行的操作。定義乙個屬性如果只有
get,這個屬性就是唯讀的。同樣,只有
set,屬性就是只寫的,當然只寫的屬性是沒有任務意義的。
假設類是乙個銀行,既能存錢也能取錢.
money就像銀行裡的自動訪問款機,你看不見裡面的
money
,但你能用
set(
存錢),用
get(
取錢)。
m_money
是乙個私有字段,是分裝在類中的,類以外的程式不能直接訪問的,
c# get set
用法中,類的
set和
get成員是外部程式訪問類內部屬性的唯一方法,就像你去銀行取錢,你不能直接從銀行的保險櫃裡拿到錢,而是銀行營業人員把錢取出來給你的。
屬性在呼叫者看來就像乙個普通的變數,普通變數怎麼用,它就怎麼用,但作為類的設計者,你可以利用屬性來隱藏你類中的一些字段,使外界只能通過屬性來訪問你的字段,你可以通過屬性來限制外界對你的字段的訪問,就利用get,set
,如果你想讓使用者隨意訪問你的字段,那麼就實現
set和
get,如果只想讓使用者讀取字段,就只實現
get,若只想讓使用者寫字段就只實現
set,同時你還可以在
set和
get中對使用者傳遞來的值進行一些驗證工作,以確保你的字段將含有正確的值。
c# get set用法比如
可以看出,c# get set
用法中有一種函式的特徵。
c# get set用法中一則是隱藏元件或類內部的真實成員,
二是用來建立約束的,比如,實現「有我沒你」這種約束。
三是用來響應屬性變化事件,當屬性變化時做某事,只要寫在set
方法裡就行了。
有兩種途徑揭示類的命名屬性——通過域成員或者通過屬性。前者是作為具有公共訪問性的成員變數而被實現的;後者並不直接回應儲存位置,只是通過 訪問標誌(accessors)
被訪問。 當你想讀出或寫入屬性的值時,訪問標誌限定了被實現的語句。用於讀出屬性的值的訪問標誌記為關鍵字
get,而要修改屬性的值的讀寫符標誌記為
set。
house類有乙個命名為
squarefeet
的屬性,它可以被讀和寫。實際的值儲存在乙個可以從類內部訪問的變數中——如果你想當作乙個域成員重寫它,你所要做的就是忽略訪問標誌而把變數重新定義為:
對於乙個如此簡單的變數,這樣不錯。但是,如果你想要隱藏類內部儲存結構的細節時,就應該採用訪問標誌。在這種情況下,set
訪問標誌給值引數中的屬性傳遞新值。(可以改名,見第
10行。) 除了能夠隱藏實現細節外,你還可自由地限定各種操作:
get和
set:允許對屬性進行讀寫訪問。
get only
:只允許讀屬性的值。
set only
:只允許寫屬性的值。 除此之外,你可以獲得實現在
set標誌中有效**的機會。例如,由於種種原因(或根本沒有原因),你就能夠拒絕乙個新值。最好是沒有人告訴你它是乙個動態屬性——當你第一次請求它後,它會儲存下來,故要盡可能地推遲資源分配。 以上就是對
c# get set
用法的簡單介紹。
c 中get set 的使用
在早期學習c 的過程中,經常遇到這樣的語句 public string studentname get set 當時也不是很明白為什麼要這樣?學深了c 後,又沒法對其做乙個總結。今天看了 visual c net程式設計教程 這本書,總結得不錯,做下筆記 在許多物件導向程式設計語言中,屬性 上面 中...
c 中get set 的使用
在早期學習c 的過程中,經常遇到這樣的語句 public string studentname getset 當時也不是很明白為什麼要這樣?學深了c 後,又沒法對其做乙個總結。今天看了 visual c net程式設計教程 這本書,總結得不錯,做下筆記 在許多物件導向程式設計語言中,屬性 上面 中定...
php物件導向 get , set 的用法
php物件導向 get set 的用法 一般來說,總是把類的屬性定義為 private 這更符合現實的邏輯。但是,對屬性的讀取和賦值操作是非常頻繁的,因此在 php5 中,預定義了兩個函式 get 和 set 來獲取和賦值其屬性 以及檢查屬性的 isset 和刪除屬性的方法 unset 上一節中,我...