c 學習筆記之十三 property之我見

2021-07-24 18:41:46 字數 1092 閱讀 9774

property是c#中的乙個名詞。與其認為是乙個專有語法,還不如認為是一系列語法的組合。property專屬的關鍵字就只有value。其他的性質實現都是用其他的方法的組合。property通過對一系列方法的靈活組合應用,能夠間接地對私有的成員變數進行賦值操作和得到值。因為是間接地,私有變數的私隱性也是得到了保護。在下面這個例子中

namespace propertyquest

}public string *** }}

class program 中的set{}.

console.writeline(t.***);//通過property ***間接得到私有成員變數***的值

console.writeline(t.title);//通過property title間接得到私有成員變數title的值

console.write("press any key to continue . . . ");

console.readkey(true);}}

}

property還有乙個用法,比較接近property這個單詞的本意。如果 有一項本來是物件的性質或者說屬性,但是要得到它還是要用乙個函式。例如,知道乙個矩形的長和寬,想知道它的面積。本來乙個矩形的面積就是它的乙個屬性,但是在傳統方法下,卻要用乙個函式得到,感覺彆扭。

using system;

class rectangle

}

如果想得到乙個rectangle r的面積,明明是個屬性嘛,卻要用乙個函式,r.area().

但是用property方法,這個過程就自然地多。

class rectangle              

}}

可以直接得到rectangle  r的面積屬性,用r.area。area 就是矩形的屬性嘛,那我就用物件名加屬性名,多麼自然。

完整程式如下:

using system;

class rectangle }}

namespace objectinherit

}}

c語言學習筆記十三

結構體 示例 include int main void s s.a 1 s.b 2 s.c 3 s.d 4 printf u n sizeof s return 0 編譯 gcc test.c o 反彙編 objdump test 四個成員變數在棧上的排列 80483ed c6 44 24 14 ...

C 學習筆記(十三) I O操作

c 的io操作主要是針對資料夾和檔案的讀取和寫入操作,下面我們來學習一下相關操作的類。兩個類的功能基本相同,區別如下 前者繼承system.object,後者繼承抽象類filesysteminfo 前者是靜態類,後者是非靜態類,需要new建立例項 前者返回的型別是簡單字串,後者返回的是強型別如fil...

c語言學習筆記十三

結構體 示例 include int main void s s.a 1 s.b 2 s.c 3 s.d 4 printf u n sizeof s return 0 編譯 gcc test.c o 反彙編 objdump test 四個成員變數在棧上的排列 80483ed c6 44 24 14 ...