亚洲一区亚洲二区亚洲三区,国产成人高清在线,久久久精品成人免费看,999久久久免费精品国产牛牛,青草视频在线观看完整版,狠狠夜色午夜久久综合热91,日韩精品视频在线免费观看

C#高級編程 學(xué)習(xí)總結(jié) -電腦資料

電腦資料 時(shí)間:2019-01-01 我要投稿
【www.ishadingyu.com - 電腦資料】

    1. C#靜態(tài)構(gòu)造函數(shù)

    1、靜態(tài)構(gòu)造函數(shù)既沒有訪問修飾符,也沒有參數(shù),

C#高級編程 學(xué)習(xí)總結(jié)

。因?yàn)槭?NET調(diào)用的,所以像public和private等修飾符就沒有意義了。

    2、是在創(chuàng)建第一個(gè)類實(shí)例或任何靜態(tài)成員被引用時(shí),.NET將自動(dòng)調(diào)用靜態(tài)構(gòu)造函數(shù)來初始化類,也就是說我們無法直接調(diào)用靜態(tài)構(gòu)造函數(shù),也就無法控制什么時(shí)候執(zhí)行靜態(tài)構(gòu)造函數(shù)了。

    3、一個(gè)類只能有一個(gè)靜態(tài)構(gòu)造函數(shù)。

    4、無參數(shù)的構(gòu)造函數(shù)可以與靜態(tài)構(gòu)造函數(shù)共存。盡管參數(shù)列表相同,但一個(gè)屬于類,一個(gè)屬于實(shí)例,所以不會(huì)沖突。

    5、最多只運(yùn)行一次。

    6、靜態(tài)構(gòu)造函數(shù)不可以被繼承。

    7、如果沒有寫靜態(tài)構(gòu)造函數(shù),而類中包含帶有初始值設(shè)定的靜態(tài)成員,那么編譯器會(huì)自動(dòng)生成默認(rèn)的靜態(tài)構(gòu)造函數(shù)。

public class A{    public static readonly int x;    static A()    {        x = B.y + 1;    }} class B{    public static int y = A.x + 1;     static void Main(string[] args)    {        Console.WriteLine("x:{0},y:{1},

電腦資料

C#高級編程 學(xué)習(xí)總結(jié)》(http://www.ishadingyu.com)。", A.x, y); Console.ReadLine(); }}
//x=1,y=2。

    簡單值類型的全局變量默認(rèn)初始值都是0因?yàn)槿肟诤瘮?shù)在類B,所以程序首先加載B,由于y是B的靜態(tài)成員,類一加載時(shí)便會(huì)計(jì)算y的值,但是發(fā)現(xiàn)y的值是通過賦值的方式獲得的,等號(hào)右邊用到了A的x,此時(shí)會(huì)立即計(jì)算x的值,x是通過類A的靜態(tài)構(gòu)造函數(shù)初始化的,期間又引用了B的Y,此時(shí)y的值還是0(因?yàn)閥的賦值語句還沒執(zhí)行完,故其值還是默認(rèn)的),得到x=0+1=1,繼續(xù)為y賦值得到y(tǒng)=x+1=2.

最新文章