日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C#靜態(tài)變量初始化實例詳解

C#靜態(tài)變量初始化是什么時候進(jìn)行的呢?我們知道類的靜態(tài)字段變量初始值設(shè)定項對應(yīng)于一個賦值序列,這些賦值按照它們在相關(guān)的類聲明中出現(xiàn)的文本順序執(zhí)行。

對于C#靜態(tài)變量初始化,那么如果類中存在靜態(tài)構(gòu)造函數(shù)則靜態(tài)字段初始值設(shè)定項的執(zhí)行在該靜態(tài)構(gòu)造函數(shù)即將執(zhí)行前發(fā)生。否則,靜態(tài)字段初始值設(shè)定項在***次使用該類的靜態(tài)字段之前先被執(zhí)行,但實際執(zhí)行時間依賴于具體的實現(xiàn)。在以下示例中:

C#靜態(tài)變量初始化實例應(yīng)用:

 
 
 
  1. using System;  
  2. class Test   
  3. ...{   
  4. static void Main() ...{  
  5.  Console.WriteLine("{0} {1}", B.Y, A.X);  
  6. }  
  7. public static int F(string s) ...{  
  8.  Console.WriteLine(s);  
  9.  return 1;  
  10. }  
  11. }  
  12. class A  
  13. ...{  
  14. public static int X = Test.F("Init A");  
  15. }  
  16. class B  
  17. ...{  
  18. public static int Y = Test.F("Init B");  

或者產(chǎn)生如下輸出:

 
 
 
  1. Init A  
  2. Init B  
  3. 1 1 

或者產(chǎn)生如下輸出:

 
 
 
  1. Init B  
  2. Init A  
  3. 1 1 

這是因為 X 的初始值設(shè)定項和 Y 的初始值設(shè)定項的執(zhí)行順序無法預(yù)先確定,上述兩種順序都有可能發(fā)生;***能夠確定的是:它們一定會在對那些字段的引用之前發(fā)生。但是,下面的示例:

 
 
 
  1. using System;  
  2. class Test  
  3. ...{  
  4. static void Main() ...{  
  5.  Console.WriteLine("{0} {1}", B.Y, A.X);  
  6. }  
  7. public static int F(string s) ...{  
  8.  Console.WriteLine(s);  
  9.  return 1;  
  10. }  
  11. }  
  12. class A  
  13. ...{  
  14. static A() ...{}  
  15. public static int X = Test.F("Init A");  
  16. }  
  17. class B  
  18. ...{  
  19. static B() ...{}  
  20. public static int Y = Test.F("Init B");  

所產(chǎn)生的輸出必然是:

 
 
 
  1. Init B  
  2. Init A  
  3. 1 1 

這是因為關(guān)于何時執(zhí)行靜態(tài)構(gòu)造函數(shù)的規(guī)則規(guī)定:B的靜態(tài)構(gòu)造函數(shù)(以及B的靜態(tài)字段初始值設(shè)定項)必須在A的靜態(tài)構(gòu)造函數(shù)和字段初始值設(shè)定項之前運行。

C#靜態(tài)變量初始化的基本情況就向你介紹到這里,希望對你了解和學(xué)習(xí)C#靜態(tài)變量初始化有所幫助。


文章名稱:C#靜態(tài)變量初始化實例詳解
文章源于:http://m.5511xx.com/article/dpdggsi.html