一、C#程序結構
《1》命名空間的聲明(namespace declaration)
《2》一個class
《3》class方法
《4》class屬性
《5》一個main方法
《6》語句(statements)&表達式(Expressions)
《7》注釋
注:C#文件的后綴為.cs
二、C#的基本語法
《1》using關鍵詞 using system;
《2》class關鍵詞 class關鍵字用于聲明一個類
《3》C#中的注釋,注釋用于解釋代碼,編譯器會忽略
多行注釋/**/ //
《4》成員變量:變量是類的屬性或數據成員,用于存儲數據
eg:double length; double width;
《5》成員函數:函數是執行一系列指定任務的語句,類的成員函數是在類內聲明的。
eg:public double GetArea(){
return length*width;
}
《6》實例化一個類
ExecuteRectangle包含Main()方法和實例化Rectangle類的類;
eg:class ExecuteRectangle
{
static void Main(string[] args)
{Rectangle r=new Rectangle();r.Display();
}
}
《7》標識符:用來識別類,變量函數或任何其他的用戶定義的項目,在C#中類的命名必須遵循以下六點;
《1》標識符必須以字母,下劃線或者@開頭,后面可以跟一系列的字母;
《2》標識符的第一個字符不能是數字。
《3》標識符必須不包含任何嵌入的空格和符號。
《4》標識符不能是C#關鍵字除非他們有一個@前綴。
《5》標識符必須區分大小寫。
《6》不能與C#類庫的名稱相同。
《8》C#關鍵字:關鍵字不能用作標識符,但是如果你想使用這些關鍵字作為標識符,可以在關鍵字前面加上@字符作為前綴;
三、C#數據類型
C#數據類型分為三種:值類型,引用類型,指針類型;
**如果需得到一個類型或者一個變量在特定平臺上的準確尺寸,才可以使用sizeof方法;
表達式(sizeof(type))產生以字節為單位存儲對象或類型的存儲尺寸;
值類型:
bool ,byte,char,decimal,double,float等等。
當一個值類型轉換為一個引用類型的時候---裝箱
當一個對象轉換為值類型時候-----拆箱
四、C#運算符
++a先進行自增運算在賦值;
--a先進行自減運算在賦值;
A=20 B=10
+ A+B=30;
- A-B=10;
* A*B=200;
/ A/B=2;
% A %B=0;取模運算,先除后取余;
++ A++=21 自增運算,整數后加一;
-- A--=19 自減運算,整數后減一;
其它運算符:
sizeof()返回數據類型的大小 sizeof(int) 4
typeof()返回class的類型 typeof(StreamReader)
&返回變量的地址 &a;將得到變量的實際地址
*變量的指針 *a;將指向一個變量
?:條件表達式 如果條件為真?則為x:否則為y
is判斷對象是否為某一類型 if(Ford is Car)檢查car是否是Car類的一個對象。
as 強制轉換即使轉換失敗也不會拋出異常。
C#中的運算優先級
右括號先括號,后乘除在加減,然后位移在關系,邏輯完后條件最后一個逗號;
五、C#判斷
《1》if語句
《2》if...else語句
《3》嵌套if語句
《4》switch語句
《5》嵌套switch語句
《1》while循環
《2》for/foreach循環
《3》do...while循環
《4》嵌套循環
循環控制語句
《1》break:終止loop或者switch語句,程序流將繼續執行緊接著loop或者switch的下一條語句;
《2》Continue:跳過本輪循環開始下一輪循環;
六、封裝
封裝被定義為把一個或者多個項目封閉到一個物理的或者邏輯的包中,封裝是為了防止對實現細節的訪問。
抽象和封裝是面向對象程序設計的相關特性,封裝使開發者實現所需級別的抽象,抽象允許相關信息可視化,C#封裝根據具體的需要,設置使用者的權限,并且通過訪問修飾符來實現。