日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#中成员初始化顺序

發布時間:2025/3/18 C# 9 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#中成员初始化顺序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

C#中成員初始化順序

http://blog.csdn.net/huangcailian/article/details/25958967

一、成員初始化整體順序

1.成員賦值初始化先于構造函數; 2.成員賦值初始先從子類再到基類; 3.構造函數初始化先從基類再到子類; 4.靜態成員初始化優先于實例成員初始化;

二、對類型靜態成員構造的大致過程

1.分配靜態成員的內存空間,此時空間存儲數據為0; 2.執行類的靜態成員的初始化語句; 3.執行類的靜態構造函數。

三、對類型實例成員構造的大致過程

1.分配實例成員的內存空間,此時空間存儲數據為0; 2.執行子類實例成員初始化語句; 3.執行基類實例化成員初始化語句; 4.執行基類構造函數; 5.執行子類構造函數;

四、同時有靜態成員和實例成員的大致構造過程

1.執行子類靜態成員初始化語句; 2.執行子類靜態構造函數; 3.執行子類實例成員初始化語句; 4.執行基類靜態成員初始化語句; 5.執行基類靜態構造函數; 6.執行基類實例成員初始化語句; 7.執行基類實例構造函數; 8.執行子類實例構造函數。

五、說明

1.C#中靜態構造函數都是私有的,不能為其添加訪問修飾符; 2.只有創建類的實例或調用任何靜態成員時才能激發靜態構造函數; 3.調用一個未初始化類的靜態成員時,他會先去初始化這個類的靜態成員和靜態構造函數。 using System; using System.Diagnostics; using System.Text;class Test {class CTEST{}class SINGLE_TON{public static float sfx = 1; //1public static CTEST ot = new CTEST();//2private float fx = 13;static private double dx = 100.03;//3private string s = "hello";//public static readonly SINGLE_TON Instance = new SINGLE_TON();//加上這句就比較特殊了,這里雖有構造操作,但必須等到所有成員初始完成后才會進行public static int x;//22public string str;protected int y = 123;public SINGLE_TON(){Console.WriteLine("private single_ton");}//靜態構造函數最會多只會被調用一次,在首次訪問類的靜態成員變量或生成類的實例時被調用。static SINGLE_TON(){Console.WriteLine("static single_ton");}public void dosth(){Console.WriteLine("do some thing");}}static void Main(){//首次訪問類的靜態變量,編譯器首先會對所有有初始值的靜態變量進行賦值操作,如1和2,3處。//然后調用靜態構造函數。//不會對非靜態變量進行賦值。不過它們都有默認值,數值類型為0,引用類型為nullint x = SINGLE_TON.x;// SINGLE_TON.Instance.dosth();// SINGLE_TON.Instance.dosth();// SINGLE_TON.Instance.dosth();//生成類實例時,編譯器首先會對所有有初始值的靜態變量進行賦值操作,如1和2,3處。//然后調用靜態構造函數。//然后才對有初始值的非靜態變量進行賦值。//然后調用普通構造函數。SINGLE_TON sg = new SINGLE_TON();}//輸出結果: // private single_ton // static single_ton // do some thing // do some thing // do some thing }

?

posted on 2016-11-03 21:34 時空觀察者9號 閱讀(...) 評論(...) 編輯 收藏

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的C#中成员初始化顺序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。