程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#靜態變量與實例變量實例剖析

C#靜態變量與實例變量實例剖析

編輯:C#入門知識

C#靜態變量與實例變量實例剖析。本站提示廣大學習愛好者:(C#靜態變量與實例變量實例剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是C#靜態變量與實例變量實例剖析正文


本文實例講述了C#靜態變量與實例變量的詳細用法,分享給年夜家供年夜家參考。詳細剖析以下:

1)在語法界說上的差別:
類變量也叫靜態變量,靜態變量前要加static症結字,而實例變量前則不加;
實例變量也叫對象變量,即沒加static 的變量;

2)在法式運轉時的差別:
實例變量屬於某個對象的屬性,必需創立了實例對象,個中的實例變量才會被分派空間,能力應用這個實例變量。靜態變量不屬於某個實例對象,而是屬於類,所以也稱為類變量,只需法式加載了類的字節碼,不消創立任何實例對象,靜態變量就會被分派空間,靜態變量便可以被應用了。總之,實例變量必需創立對象後才可以經由過程這個對象來應用。靜態變量則可以直接應用類名來援用;

3)在運轉表示成果的差別:
類變量和實例變量的差別在於:類變量是一切對象共有,個中一個對象將它值轉變,其他對象獲得的就是轉變後的成果;而實例變量則屬對象公有,某一個對象將其值轉變,不影響其他對象;

再來看看上面這段法式:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
  class Program
  {
    static void Main(string[] args)
    {
      StaticTest A, B;//界說類的變量
      A = new StaticTest();//創立類的實例A
      B = new StaticTest();//創立類的實例B
      StaticTest.stal = StaticTest.stal + 10;//經由過程類名給靜態變量賦值
      A.a2 = A.a2 + 10;//給實例A的成員A2賦值
      StaticTest.stal = StaticTest.stal + 10;//經由過程類名給靜態變量賦值
      B.a2 = B.a2 + 20;//給實例B的成員賦值
      Console.WriteLine("StaticTest.stal+{0},A.a2={1}", StaticTest.stal, A.a2);//輸入靜態變量和實例A的成員a2的值
      Console.WriteLine("StaticTest.stal+{0},B.a2={1}", StaticTest.stal, B.a2);//輸入靜態變量和實例B的成員a2的值
      Console.ReadKey();
      
    }
  }
  class StaticTest
  {
    public static int stal = 10;//界說靜態變量
    public int a2 = 10;//界說實例變量
  }
}

運轉成果以下圖所示:

願望本文所述對年夜家C#法式設計的進修有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved