你真的知道為什麼要用get與set嗎?

2022-08-09 16:03:19 字數 480 閱讀 8577

class person

public void setname(string name)

public string getage()

public void setage(string age)

}   在這裡本來就可以用get與set取值或者設定值了,假如我們直接將變數宣告為public不是更簡單點。這種情況有必要用get與set方法嗎?

在這裡解釋為什麼要還是要用get與set。

這裡就有乙個封裝和控制的問題。假設你直接訪問屬性 person.name;突然有一天,你可能需要對每個名字,或者某個名字過濾掉一些東西,怎麼辦?那麼你就只好在出現person.name的地方到處新增過濾機制。如果你使用getname()方法,那麼我就在這個方法裡面過濾一下就ok了。

其實總體思想就是乙個物件導向的觀點來做事情,你要什麼,就給我講,我到屋裡給你拿出來,但是你卻不可以直接進屋去拿,萬一你不熟悉我家裡的情況,把我家搞亂了咋個辦啊。

我不知道為什麼

我不知道為什麼 代騰飛 2008年10月4日 於成都 是不是我溫情的火不到火候 溫暖不了你愛的心窩 是不是我對你付出的不夠多 才讓你對我如此冷落 曾經的陰差陽錯 讓我們彼此中斷了所有聯絡 從此你不再我的世界裡出沒 我也同樣淡出了你的生活 只是我不知道為什麼 經過了這麼多年以後 我的心依然為你著魔 每...

你知道為什麼zip始終不相容rar嗎?

你知道為什麼zip始終不相容rar嗎?不支援的原因 zip格式是開放的,任何壓縮軟體都可以免費使用,rar是rarlab的專利演算法,其它軟體要想提供對rar格式支援必須交納費用以獲得授權,如果winzip想要支援zip,就必須向rarlab付費,這根本就是拿自己的血汗去餵飽對手。記住,winzip...

為什麼你也要用Firefox

其實我不用說多的,只說三個最重要原因相信便足夠了。1.安全至上。就是安全 安全 還是安全。有什麼比使用計算機時,常常要害怕會否因為看網頁而被人家入侵使人感到厭煩呢?中了計算機病毒還是小事,失去自己網上銀行戶口的密碼,或者是電郵的密碼,或者是線上遊戲的道具,都會使你損失慘重。3.支援公開標準。這個理由...