1using
system;
2using
system.collections.generic;
3using
system.linq;
4using
system.text;56
namespace727
catch
(exception e)
2832
33///
//////
//////
///34 int32 v = 5
; //clr via c# p114頁 裝彩箱例子
35object o = v; //
生成的il** 中顯示 這步會 「v」裝箱 將引用指標儲存到「o」中---裝箱裝箱裝箱
36 v = 123; //
將"123"載入到v裡面,,這之後 會對「v」裝箱 且將指標保留在棧上以進行concat(連線)操作---裝箱裝箱裝箱
37//
接著將字串載入到棧上 以進行concat(連線)操作
38//
對「o」拆箱 獲取指標 指向棧上的 int32 字段
39//
對int32裝箱,將指標保留在棧上 以進行concat(連線)操作 ---裝箱裝箱裝箱
40 console.writeline(v + "
," + (int32)o); //
這個經歷了 3次的裝箱
4142
//////
//////
//////
4344 console.writeline();//
這屬於靜態方法 無需例項化 直接用
45object o1 = new
object
();46 o1.gethashcode();//
"public virtual int gethashcode();這當中的"virtual"虛方法標誌 ===抽象類中的 虛方法 我實現它 但是不呼叫它 要之後的來繼承他的來重寫覆蓋它
47 o1.gettype(); //
呼叫的是非虛例項方法
4849
console.readkey();50}
5152
int a = 100;53
object
x;54
55public
void
fun1()
5659
60public
void
fun2()
6166
6768
7071
//public static class astaticclass
72//
7778
//public static string astaticproper
7980
81//}82
83 }
底層執行機制CLR C
clr的執行模型 c 流程 1.將源 編譯成委託 2.將委託 合併成程式集 3.執行程式集 4.載入公共語言進行時 注 clr common language公共語言 clr是乙個可由多種程式語言使用的 執行時 clr的核心功能 e.g.記憶體管理 程式集載入 安全性 異常處理 執行緒同步等 可由面...
CLR C 的一些語言特性
1.new和override區別 override在子類中重寫基類的方法 new在子類中為基類同名 virtual 方法新增乙個新的版本,會保留基類的同名 virtual 方法。如果基類的同名方法不給出new和override修飾符,net預設採用new的方式,編譯時將產生一條警告資訊。關於過載 一...
《部落格園精華集》,CLR C 分冊徵求意見稿
anytao 緣起自 你必須知道的.net 出版以來,已經有乙個多月沒有和大家近距離的在這裡分享了,慚愧之餘,很高興收到 精華集編委會 的邀請通知,而且從dudu得知,精華集 算是的公益性活動。作為的忠實粉絲,我沒有任何理由拒絕這樣的邀請,欣然成為編委會的乙份子了。目前,我將和張子陽負責clr c ...