close

文章轉載於格子樑/艾偷 郭大大的  C# method ,property 等基礎語法比較

By Allen Kuo, 建立日期:2008/05/02 16:36 ,最後修改日期:2008/05/02 17:17
說明C#語法在撰寫method,property時的語法差異
    加入書籤: 收進你的MyShare個人書籤

 

初學 C# 的人, 對於 method, property的寫法,有時會搞混, 其實買本語法書, 多練習幾次就ok, 我在此列出它們, 供初學者比較。

public , private 的差異

如上圖所示, 如果 class 裡宣告 public , 表示外部程式呼叫時, 可以呼叫它(可以呼叫 name); 如果沒寫, 表示private ,外部程式就無法呼叫它(無法呼叫 addr), 只能在 Member class 裡呼叫, 有時您會需要在 class 裡寫一些 function 供 class 使用, 此時就可以考慮宣告成 private

建構子的寫法

如上圖所示, 外部程式建立一個新的物件時, 會先執行此物件的建構子, 建構子一定要與 class 名稱相同, 可以有,或沒有引數

 方法 ( method ) 的寫法

method 通常用來表示動作, 例如Save, Start, Stop, Delete, Create, Select, 而它的語法如上圖所示, 要記得加傳回型別, 若沒有傳回型別,則要寫 void , 建構子不必寫傳回型別哦!!, 不要搞混了; 至於 method 要不要寫public ,文章一開始已經有說明它們的差異了, 如果忘記了, 請您再捲上去看一下

屬性( property ) 的寫法

屬性通常用來保存類別的一些特質, 例如Size, Color, UserName, Birthday等, 如上圖所示, 比較簡易的寫法,是宣告 field (即上圖的 name), 只需要一行就好了, 但比較正規, 也建議的寫法,是寫成 property(如上圖的 birthday), 為什麼呢? 因為寫成 property 有以下優點:

  • 在set{}時, 可以順便檢查傳入值是否合理, 若用 field 就無法做到這點
  • 若在 property 裡不寫get{} , 外程程式就無法取得值,表示我們可以設計出一個唯寫的 property; 相同的道理, 若property裡不寫 set{} , 就可以設計出一個唯讀的 property; 但您不可以二個都不寫哦, 一個 property 若不能傳入及取得值, 它就沒有用了, 對吧

 

結論

 

  建構子 方法 屬性 欄位
需要寫傳回型別 ? No Yes Yes 直接宣告型別
可以宣告public or private ? Yes Yes Yes Yes
可以宣告要傳入哪些引數 ? Yes Yes No 沒得寫
在程式裡需要寫 set, get ? No No Yes 沒得寫
arrow
arrow
    全站熱搜

    kingjoy1235 發表在 痞客邦 留言(0) 人氣()