此外,也可以參考MSDN的「C# 程式設計手冊」:http://msdn.microsoft.com/zh-tw/library/67ef8sbd.aspx
C#本身是OOP的語言,何謂物件(object)呢?簡單來說,物件也是一種資料型態。那什麼是資料型態呢?資料型態就是"資料的型態"(有講跟沒講一樣...這樣下去說不完啊!),物件的製作藍圖則是類別(class),程式中所使用的則是物件的實體(instance)。
C#的程式是大小寫區分(case-sensitive),所以命名跟使用要注意!命名慣例可以參考「命名方針」http://msdn.microsoft.com/zh-tw/library/ms229002.aspx,命名規範有兩種,一個是PascalCase,另一個是camelCase,差別在於首字有沒有大寫,相同處為字與字之間都是大寫的,書中建議變數用camelCase。(如果去Google一下,可以發現這定義可能不太一樣!camelCase還有分upper camel case和lower camel case兩種...)
成員定義(member definition)
先介紹存取修飾詞(Access Modifiers),有四個關鍵字:(再加上一個 static,但static和四個意義不同,另外獨立出來說明),參考MSDN:http://msdn.microsoft.com/zh-tw/library/wxh6fsc7.aspx
- public
- private
- internal
- protected
- 混合用法protected internal
public class MyClass//類別
{
public int MyInt;//欄位
private int myint;
public int MyIntPro//屬性
{
get{ return myint; }
set{ myint=value; }
}
public void MyMethod//方法
{
//方法的程式碼...
}
}
命名規範(MSDN都是建議PascalCase)
- 類別=PascalCase
- 欄位=PascalCase
- 屬性=PascalCase
- 方法=PascalCase
靜態(static):可以用在兩個地方,靜態類別、靜態類別成員(包含欄位、屬性、方法)。靜態類別不需實體化就能使用,而靜態類別成員則是"共用"的概念,不管實體物建有多少個,只會有一個成員存在,另外,使用靜態類別成員可以不需要有實體類別。
其他OOP的技術,上述為基礎的OOP程式語法,如果需要更進一步的使用OO,可以利用下列關鍵字搜尋MSDN獲得資訊:
- Interfaces介面
- Inheritance繼承
- Polymorphism多型
- Relationships between objects物件之間的關係
- Operator overloading運算子多載
- Events事件
- Reference versus value types參考與值
其他注意事項:
- 字串(string)是用雙引號「"」(double quotation),字元是用單引號「'」(single quotation)。如果字串不加入逸出字元「\",\',\\之類的」(escape sequence)的話,可以使用逐字翻譯字元「@」(verbatim)。
- 函式(function)當中,如果需要傳址(reference)的方式,使用關鍵字「ref」,或者使用關鍵字「out」,皆可達到功能,為使用實有些許差異。
- 參數(parameter)跟引數(argument)是不一樣的意義。函式定義時所使用稱為參數(parameter),當我們寫程式的時候,會去呼叫一個函式或方法,這時候稱為引數(argument)。
沒有留言:
張貼留言