男女做爽爽爽网站-男女做羞羞高清-男女做爰高清无遮挡免费视频-男女做爰猛烈-男女做爰猛烈吃奶啪啪喷水网站-内射白浆一区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C# 深入理解類(實例構造函數)

admin
2025年5月19日 17:27 本文熱度 182

實例構造函數

實例構造函數是一個特殊的方法,它在創建類的每個新實例時執行。

  • 構造函數用于初始化類實例的狀態。
  • 如果希望能從類的外部創建類的實例,需要將構造函數聲明為public。 圖7-2闡述了構造函數的語法。除了下面這幾點,構造函數看起來很像類聲明中的其他方法。
  • 構造函數的名稱和類名相同。
  • 構造函數不能有返回值。

?

例如,下面的類使用構造函數初始化其字段。本例中,它有一個名為TimeOfInstantiation 的字段被初始化為當前的日期和時間。

class MyClass
{
    DateTime TimeOfInstantiation;  //字段

    ...
    pubic MyClass()                //構造函數
    {
        TimeOfInstantiation =DateTime.Now;   //初始化字段
    }
    ...
}

說明 在學完靜態屬性那一節后,我們可以仔細看看初始化TimeOfInstantiation那一行。 DateTime類(實際上它是一個結構,但由于還沒介紹結構,你可以把它先當成類)是從 BCL中引入的,Now是類DateTime的靜態屬性。Now屬性創建了一個新的DateTime類的 實例,將其初始化為系統時鐘中的當前日期和時間,并返回新DateTime實例的引用。

帶參數的構造函數

構造函數在下列方面和其他方法相似。

  • 構造函數可以帶參數。參數的語法和其他方法完全相同。
  • 構造函數可以被重載。 在使用創建對象表達式創建類的新實例時,要使用new運算符,后面跟著類的某個構造函數。 new運算符使用該構造函數創建類的實例。 例如,在下面的代碼中,Class1有3個構造函數:一個不帶參數,一個帶int參數,一個帶 string參數。Main使用各個構造函數分別創建實例。
class Class1
{
    int Id;
    string Name;

    public Class1(){Id=28;Name="Nemo";}     //構造函數0
    public Class1() {ID=val;nameof="Nemo";} //構造函數1
    public Class1(String name){Name=name;}  //構造函數2

    public void SoundOff()
    {
        Console.WriteLine($"Name{Name},Id{Id}");
    }
}

class Program
{
    static void Main()
    {
        Class1 a=new Class1();       //調用構造函數0
               b=new Class1(7);      //調用構造函數1
               c=new Class1("Bill"); //調用構造函數2

        a.SoundOff();
        b.SoundOff();
        c.SoundOff();
    }
}

默認構造函數

如果在類的聲明中沒有顯式地提供實例構造函數,那么編譯器會提供一個隱式的默認構造函 數,它有以下特征。

  • 沒有參數。
  • 方法體為空。

如果你為類聲明了任何構造函數,那么編譯器將不會為該類定義默認構造函數。 例如,下面代碼中的Class2聲明了兩個構造函數。

  • 因為已經至少有一個顯式定義的構造函數,所以編譯器不會創建額外的構造函數。
  • 在Main中,試圖使用不帶參數的構造函數創建新的實例。因為沒有無參數的構造函數, 所以編譯器會產生一條錯誤消息。
class Class2
{
    publicClass2(int Value) {...}  //構造函數0
    publicClass2(String Value){...} //構造函數1
}

class Program
{
    static void Main()
    {
        Class2 a=new Class2();   //錯誤!沒有無參數的構造函數
        ...
    }
}

說明 可以像對其他成員那樣,對實例構造函數設置訪問修飾符。可以將構造函數聲明為public, 這樣在類的外部也能創建類的實例。也可以創建private構造函數,這樣在類外部就不 能調用該構造函數,但在類內部可以。


該文章在 2025/5/21 9:28:24 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产精品乱码人妻一区二区三区 | 高清一区二区三区日本久 | 真实国产乱子伦精品一区二区三区 | 中文有码人妻字幕在线 | 中文字幕无码久久久久久久 | 综合激情区视频一区视频二区 | 久久中文字幕日韩精品 | 国产亚洲欧美精品永久 | 久久国产三级 | 国产成人调教在线视频 | AV无码国产精品午夜A片麻豆 | 韩国羞羞秘密教学子开车漫书 | 精品久久蜜臀AV色欲 | 欧美一二三区视频 | 久久亚洲综合中文字幕不卡 | 91麻豆国产香蕉久久精品 | 波多野结伦理美女中文 | 国产精品无码麻豆一区 | 大片在线播放 | a级毛片无码久久精品免费 a级毛片无码免费视频 | 亚洲国产大片 | 国产女主播内部白浆 | 午夜神器免费观看黄 | 国产成人综合亚洲av第一页 | 日本无码一区二区三区不卡 | 亚洲午夜精品无码专区在线观看 | 国产极品JK白丝喷白浆免费视频 | 国产91丝袜播放动漫 | 成年美女黄网站色奶头大全 | 蜜月a 免费一区二区三区 | 国产精品久久久久久夜夜夜夜 | 伊人久久波多野结衣中文字幕 | 粗大的内捧猛烈进出在线视 | 2024国产精品一卡2卡三卡4卡 | 久久久久久久久久毛片精品美女 | 久久精品国产清自在天天线 | 欧美性爱-第1页 | 无码国产伦精品一区二区三区视频 | 黑人XOXO性欧美片 | 成人A片熟女人妻久久 | 国产精品视频久久视频小视频香蕉视频 |