欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

學習C#靜態(tài)函數(shù)及變量的一個精典例子與代碼

 更新時間:2007年03月25日 00:00:00   作者:  
(1)用于對靜態(tài)字段、只讀字段等的初始化。               
  (2)添加static關鍵字,不能添加訪問修飾符,因為靜態(tài)構造函數(shù)都是私有的。         
  (3)類的靜態(tài)構造函數(shù)在給定應用程序域中至多執(zhí)行一次:只有創(chuàng)建類的實例或者引用類的任何靜態(tài)成員才激發(fā)靜態(tài)構造函數(shù) 
 ?。?)靜態(tài)構造函數(shù)是不可繼承的,而且不能被直接調(diào)用。             
 ?。?)如果類中包含用來開始執(zhí)行的 Main 方法,則該類的靜態(tài)構造函數(shù)將在調(diào)用 Main 方法之前執(zhí)行。任何帶有初始值設定項的靜態(tài)字段,則在執(zhí)行該類的靜態(tài)構造函數(shù)時,先要按照文本順序執(zhí)行那些初始值設定項。   
 ?。?)如果沒有編寫靜態(tài)構造函數(shù),而這時類中包含帶有初始值設定的靜態(tài)字段,那么編譯器會自動生成默認的靜態(tài)構造函數(shù)。
以下用例子代碼進一步說明:
復制代碼 代碼如下:

/************************************************** 
* 靜 態(tài) 構 造 函 數(shù) 練 習 
* (1)①②③……為執(zhí)行順序 
* (2)輸出結果: static A() 
* static B() 
* X = 1, Y = 2 
***************************************************/ 
using System; 
class A 

public static int X; 
static A() //④ 執(zhí)行完后返回到③ 

X = B.Y + 1; 
Console.WriteLine("static A()"); 


class B 

public static int Y = A.X + 1; //③ 調(diào)用了A的靜態(tài)成員, 
// 轉到A的靜態(tài)構造函數(shù)----> 
static B() //② 如果帶有初始值設定項的靜態(tài)字段, 
// 執(zhí)行該類的靜態(tài)構造函數(shù)時, 
// 先要按照文本順序執(zhí)行那些初始值設定項。 
// 轉到初始值設定項----> 

Console.WriteLine("static B()"); 

static void Main() //① 程序入口, 
// 如果類中包含用來開始執(zhí)行的 Main 方法, 
// 該類的靜態(tài)構造函數(shù)將在調(diào)用 Main 方法之前執(zhí)行。 
// 轉到B的靜態(tài)構造函數(shù)----> 

Console.WriteLine("X = {0}, Y = {1}", A.X, B.Y);//⑤ 輸出結果 
Console.ReadLine(); 


相關文章

最新評論