使用 Google 搜尋本站文章:
首頁 | CodeCharge 討論板 | 部落格 | ASP.NET 電子書 | 所有文章 | 相簿 | News | 網站導讀 | 聯絡 Allen | 訂閱 RSS
Microsoft MVP 
since 2004 
 

略過巡覽連結。

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 沒得寫


目前節點的文章 :

 初學者應該先學的 .NET Framework 物件
 namespace(命名空間)與Imports,Using的用途
 如何宣告C#變數及四則運算
 C# method,如何寫 optional 引數
 判斷字串長度
 四捨五入的規則
 C# 字串變數, 如何包含雙引號或反斜線
 如何找出 Array 裡是否包含所需要的 item
 C# method ,property 等基礎語法比較
 如何設計 class (入門)
 型別轉換
 Microsoft 提供的 Visual C# 範例
 method, property問與答
 如何做到 10000 顯示成 NT$ 10,000
 傳入 RGB, 傳回 html 的色碼
 列出某 folder 之下的所有 folder 清單
 檔案 I/O & 遞迴搜尋目錄
 判斷字串是檔案或資料夾
 一些 DateTime 處理函數
 DateTime.TryParse()的注意事項
 如何取得本週的第一天是哪一天
 interface 簡介
 如何做出可依 key/value 排序的物件
 泛型裡的Constructor Constraints - new()
 如何在將物件序列化時, 指定根節點的名稱

Copyright © AllenKuo.com , 2000 - 2010