LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C#編程基礎(chǔ):靜態(tài)成員與實(shí)例成員的區(qū)別及訪問(wèn)方式

admin
2024年11月10日 9:36 本文熱度 1040

在C#中,靜態(tài)成員(Static Members)和實(shí)例成員(Instance Members)是類的兩種不同類型的成員,它們?cè)诙x、存儲(chǔ)位置、訪問(wèn)方式以及生命周期等方面存在顯著區(qū)別。

靜態(tài)成員

  1. 定義:靜態(tài)成員是使用static關(guān)鍵字修飾的成員,它們屬于類本身,而不是類的任何特定實(shí)例。
  2. 存儲(chǔ)位置:靜態(tài)成員存儲(chǔ)在托管堆的靜態(tài)存儲(chǔ)區(qū)域中,而不是在實(shí)例對(duì)象的內(nèi)存中。
  3. 訪問(wèn)方式:靜態(tài)成員通過(guò)類名直接訪問(wèn),而不是通過(guò)類的實(shí)例。例如,ClassName.StaticMember。
  4. 生命周期:靜態(tài)成員在程序運(yùn)行期間一直存在,直到程序結(jié)束。它們的生命周期與應(yīng)用程序域相關(guān)聯(lián)。
  5. 共享性:類的所有實(shí)例共享同一個(gè)靜態(tài)成員的值。如果在一個(gè)實(shí)例中修改了靜態(tài)成員的值,那么在其他實(shí)例中訪問(wèn)該成員時(shí),將看到修改后的值。

實(shí)例成員

  1. 定義:實(shí)例成員是不使用static關(guān)鍵字修飾的成員,它們屬于類的實(shí)例(對(duì)象)。
  2. 存儲(chǔ)位置:實(shí)例成員存儲(chǔ)在托管堆的對(duì)象內(nèi)存中,每個(gè)實(shí)例都有自己的成員副本。
  3. 訪問(wèn)方式:實(shí)例成員通過(guò)類的實(shí)例訪問(wèn)。例如,objectName.InstanceMember。
  4. 生命周期:實(shí)例成員的生命周期與實(shí)例對(duì)象的生命周期相關(guān)聯(lián)。當(dāng)對(duì)象被創(chuàng)建時(shí),它的成員被分配內(nèi)存;當(dāng)對(duì)象被垃圾回收時(shí),它的成員的內(nèi)存也被釋放。
  5. 獨(dú)立性:每個(gè)類的實(shí)例都有自己的實(shí)例成員副本,因此修改一個(gè)實(shí)例的成員不會(huì)影響其他實(shí)例的成員。

訪問(wèn)示例

public class MyClass{    // 靜態(tài)成員    public static int StaticField = 10;    public static void StaticMethod()    {        Console.WriteLine("This is a static method.");    }
   // 實(shí)例成員    public int InstanceField = 20;    public void InstanceMethod()    {        Console.WriteLine("This is an instance method.");    }}
class Program{    static void Main(string[] args)    {        // 訪問(wèn)靜態(tài)成員        Console.WriteLine(MyClass.StaticField); // 輸出: 10        MyClass.StaticMethod(); // 輸出: This is a static method.
       // 創(chuàng)建類的實(shí)例        MyClass obj = new MyClass();
       // 訪問(wèn)實(shí)例成員        Console.WriteLine(obj.InstanceField); // 輸出: 20        obj.InstanceMethod(); // 輸出: This is an instance method.    }}

在上面的示例中,StaticField和StaticMethod是MyClass的靜態(tài)成員,它們通過(guò)類名MyClass直接訪問(wèn)。而InstanceField和InstanceMethod是MyClass的實(shí)例成員,它們通過(guò)MyClass的實(shí)例obj訪問(wèn)。

注意事項(xiàng)

  • 靜態(tài)成員不能訪問(wèn)實(shí)例成員(除非通過(guò)實(shí)例的引用),因?yàn)殪o態(tài)成員在實(shí)例創(chuàng)建之前就已經(jīng)存在,并且它們不知道任何特定的實(shí)例。
  • 實(shí)例成員可以訪問(wèn)靜態(tài)成員,因?yàn)閷?shí)例成員可以訪問(wèn)類級(jí)別的任何內(nèi)容。
  • 靜態(tài)構(gòu)造函數(shù)(如果有的話)在類的任何靜態(tài)成員被訪問(wèn)之前執(zhí)行一次,而實(shí)例構(gòu)造函數(shù)在每次創(chuàng)建類的實(shí)例時(shí)執(zhí)行。

該文章在 2024/11/11 10:23:19 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
精品一区二区久久久久久久 | 欧美性爱专区在线观看 | 亚洲欧美中文字幕制服二区 | 亚洲影院中文字幕 | 久久精品日本亚洲优女 | 亚洲国产中文精品高清在线 |