【正文】
t e m . E x c e p t i o n類 , 接 口S y s t e m . V a l u e T y p eS t r u c tS y s t e m . E n u mB o o l e a n基 本 類 型I n t 1 6B y t e I n t 3 2C h a r I n t 6 4D e c i m a l S i n g l eD o u b l e 名稱 說明 Equals 已重載。 引用類型和值類型的內(nèi)存分配 值類型存儲在運(yùn)行棧,引用類型存儲在托管堆 Apparel myApparel = new Apparel()。 //錯(cuò)誤,要具有相同類型 運(yùn)算符和表達(dá)式 類別 運(yùn)算符 說明 表達(dá)式 算 術(shù) 運(yùn) 算 符 + 執(zhí)行加法運(yùn)算 ( 如果兩個(gè)操作數(shù)是 字符串 , 則該運(yùn)算符用作 字符串連接運(yùn)算符 , 將一個(gè)字符串添加到另一個(gè)字符串的末尾 ) 操作數(shù) 1 + 操作數(shù) 2 執(zhí)行減法運(yùn)算 操作數(shù) 1 操作數(shù) 2 * 執(zhí)行乘法運(yùn)算 操作數(shù) 1 * 操作數(shù) 2 / 執(zhí)行除法運(yùn)算 操作數(shù) 1 / 操作數(shù) 2 % 獲得進(jìn)行除法運(yùn)算后的余數(shù) 操作數(shù) 1 % 操作數(shù) 2 ++ 將操作數(shù)加 1 操作數(shù) ++或 ++操作數(shù) 將操作數(shù)減 1 操作數(shù) 或 操作數(shù) ~ 將一個(gè)數(shù)按位取反 ~操作數(shù) 運(yùn)算符和表達(dá)式 類別 運(yùn)算符 說明 表達(dá)式 三元運(yùn)算符( 條件運(yùn)算符 ) ?: 檢查給出的第一個(gè)表達(dá)式 expression 是否為真。 體重 = 78。 從左到右 8 邏輯或 || 從左到右 9 賦值運(yùn)算符和快捷運(yùn)算符 = += *= /= %= = 從右到左 選擇結(jié)構(gòu) 語法: if (條件 ) { 語句塊 } else { 語句塊 } ?選擇結(jié)構(gòu)用于根據(jù)表達(dá)式的值執(zhí)行語句 if … else 條件:只能是bool類型的值 選擇結(jié)構(gòu) switch (“ cotton” ) { case “ COTTON” : case “ cotton” : … break。 // 存放數(shù)字的個(gè)數(shù) int Digits = 0。 // 檢查標(biāo)點(diǎn)符號 if((ch)) Punctuations++。 public class WriteTest { public static void Main() { int[] array = { 1, 2, 3, 4, 5 }。如果定義了一個(gè)符號,那么在 if指令中使用時(shí)這個(gè)符號計(jì)算為 true。 注意: Read方法的返回變量是 32位的整數(shù),如果需要得到輸入的字符,則必須通過數(shù)據(jù)類型的顯式轉(zhuǎn)換才能得到相應(yīng)的字符。 } } 運(yùn)行結(jié)果: A 65 A 控制臺輸入和輸出 ()方法 ,定義如下 : Public static string ReadLine()。 str=()。 public static void Write(string format,object o1,……)。按照十六進(jìn)制輸出整數(shù) (“i=0x{0,8:X}\td={1,10:F3}”,i,d)。 //格式化輸出 (“i=0x{0,8:X}\td={1,10:F3}”,i,d)。 結(jié)構(gòu)程序設(shè)計(jì)的不足 —代碼不能重用 void main() { int doorN_car1 = 2。 } C的面向?qū)ο筇匦? 所有東西都是對象:變量和方法的集合。 – 抽象數(shù)據(jù)類型是僅由數(shù)據(jù)類型和可能在這個(gè)數(shù)據(jù)類型上進(jìn)行的操作定義的。 = 0。 對象: C中的對象相當(dāng)于一塊內(nèi)存區(qū)域,保存對象特有的類中所定義的數(shù)據(jù)。 創(chuàng)建一個(gè)對象: new 類構(gòu)造函數(shù) student = new Student()。 字段:即該類的變量。 析構(gòu)函數(shù):用于規(guī)定在永久地放棄該類的一個(gè)實(shí)例之前需要做些什么。 } public string MyVendor { get { return vendor。 = inventID。 string str = 。缺省構(gòu)造函數(shù)不帶參數(shù),作用是將實(shí)例變量都清零。 int classID。在 .NET框架類庫中就存在這樣的類,如,它的所有成員都是靜態(tài)的。 gender = aGender。類的實(shí)例相當(dāng)于一個(gè)變量,創(chuàng)建類實(shí)例的格式如下: 類名 對象名 =new 構(gòu)造函數(shù)(參數(shù)類表) 。 –構(gòu)造函數(shù)可以有 0個(gè)、 1個(gè)或多個(gè)參數(shù)。 } } internal private class MyApp { static void Main() { Furniture f = new Furniture(aaa, 001, )。 class Furniture { const double salesTax = .065。 private string vendor, inventoryID。 事件:用于定義可由該類生成的通知。 、接口或數(shù)組類型的一個(gè)變量時(shí),變量的值總是某個(gè)對象的引用或者是 null引用。] 類、對象和引用的聲明 聲明一個(gè)類:訪問修飾字 class 類名 {變量聲明,方法聲明 } class Student { long id。 = 1。 public int speed。 初級特性 面向?qū)ο蠹夹g(shù)最基本的概念是類和對象: – 類是一個(gè)樣板,以操作、表示和算法的形式完整地定義了一組對象的行為。 int doorN_car2 = 4。 speed) { if(speed 100) ++speed。 注意:格式化 format同 WriteLine中的格式化參數(shù)完全一樣。 double d=。 //由控制臺輸入浮點(diǎn)字符串 d=(str)。 using 。 i=()。 INHOUSE warning Debug in on. elif DEBUG amp。這些語句可以指示編譯器包含或不包含某些代碼,甚至可以根據(jù)預(yù)處理指令的值終止編譯。 } 為所有計(jì)數(shù)器設(shè)置初始值 接受輸入 對輸入的每一個(gè) 字符都進(jìn)行循環(huán) 使用了所有輸入的字符 之后,循環(huán)自動(dòng)終止 using System。 instr = ()。 循環(huán)結(jié)構(gòu)的類型 while 循環(huán) do 循環(huán) for 循環(huán) foreach 循環(huán) 條件:只能是bool類型的值 while 循環(huán)反復(fù)執(zhí)行指定的語句,直到指定的條件為真 語法 : while (條件 ) { // 語句 } break 語句可用于退出循環(huán) continue 語句可用于 跳過當(dāng)前循環(huán)并開始下一循環(huán) while 循環(huán) do…while 循環(huán) do…while 循環(huán)與 while 循環(huán)類似,二者區(qū)別在于 do…while 循環(huán)中即使條件為假時(shí)也至少執(zhí)行一次該循環(huán)體中的語句。 Variable 。 對兩個(gè)表達(dá)式執(zhí)行邏輯“ 與 ” 運(yùn)算 操作數(shù) 1 amp。 } m y A p p a r e lm y A p p a r e l 1F a b T y p eP r i c e“ S y n ”2 5 0o v e r h e a d棧 托管堆 裝箱與拆箱 裝箱即將值類型轉(zhuǎn)換為引用 int age = 17。 GetType 獲取當(dāng)前實(shí)例的 Type。 // 由于該數(shù)據(jù)類型屬于引用類型,所以會考慮新處理的值 (變量的值為 {0}, )。 (該變量的初始值為 {0}, value)。 ( 1)不規(guī)則數(shù)組的聲明 語法形式: type [ ] [ ] [ ] arrayName 。 // 聲明一個(gè)存放姓名的字符串?dāng)?shù)組,其長度等于乘客人數(shù) string[] names = new string[count]。 // 鐘擺的周期 double period = 0。 // 顯示變量值 (布爾值 = + t)。 namespace App1 { class myApp { enum Fabric { Cotton = 1, Silk = 2 } static void Main() { string fabStr = Cotton。 g y = 一g er = 二g san = 三string ord = at( 獨(dú) {0}無 {1}, {2}心 {1}意 , 垂涎 {2}尺 , 略知 {0}{1}, 舉 {0}反 {2}, sanConsole .WriteLin ord)。 (record)。 string joinString = (_, splitStrings)。 // 將分割后的字符串使用下劃線連接在一起 joinString = (_, splitStrings)。 (你的郵箱是 {0}, )。 (你的郵箱是 {0}, )。)。 String常用方法 C 中常用的字符串處理方法: Equals() :比較兩個(gè)字符串的值是否相等 ToLower():將字符串轉(zhuǎn)換成小寫形式 IndexOf():查找某個(gè)字符在字符串中的位置 SubString():從字符串中截取子字符串 Join():連接字符串 Split():分割字符串 Trim():去掉字符串兩邊的空格 …… 實(shí)例 將一文件名的擴(kuò)展名改為 .dat。 poemSeg = (0,9)。 path = “C:\\”。 If((1/0) {…} 使用 Parse轉(zhuǎn)換數(shù)字字符串 short shParse = (100)。 bool bt。 int i32 = i16。 bool val2 = false。 ulong val2 = 34U。 long val2 = 34L。 ? Console代表標(biāo)準(zhǔn)輸出設(shè)備 屏幕,它屬于 System命名空間 ? WriteLine方法是 Console類的方法。 2. class HelloWorld 3. { 4. static void Main( ) 5. { 6. (―Hello, World!‖)。 名稱空間的聲明:使用 namespace關(guān)鍵字聲明名稱空間。命名空間既用作程序的“內(nèi)部”組織系統(tǒng),也用作“外部”組織系統(tǒng)(一種向其他程序公開自己擁有的程序元素的方法) 使用命名空間: using 類似 include 4 命名空間 class A { … } class A { … } include “” include “” …. class A { … } class A { … } … namespace a1 { class A { … } } namespace a2 { class A { … } } using a1。它使得程序員可以快速地編寫各種基于Microsoft .NET平臺的應(yīng)用程序, Microsoft .NET提供了一系列的工具和服務(wù)來最大程度地開發(fā)利用計(jì)算與通訊領(lǐng)域。 可是這些靈活性正是C/C++程序員所需要的 。 與 VB等語言相比 , 同等級別的C/C++應(yīng)用程序往往需要更長時(shí)間來開發(fā) 。另外,一些C/C++開發(fā)人員還需要在必要的時(shí)候進(jìn)行一些底層的編程。 代碼 被執(zhí)行 C++ VB 編譯器 編譯器 可執(zhí)行 代碼 可執(zhí)行 代碼 R U N T I M E R U N T I M E 2 .NET代碼的編譯 語言特定的