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

C#靜態(tài)變量與實(shí)例變量實(shí)例分析

 更新時(shí)間:2014年09月22日 10:18:07   投稿:shichen2014  
這篇文章主要介紹了C#靜態(tài)變量與實(shí)例變量,是深入掌握PHP程序設(shè)計(jì)所必須掌握的重要概念,需要的朋友可以參考下

本文實(shí)例講述了C#靜態(tài)變量與實(shí)例變量的具體用法,分享給大家供大家參考。具體分析如下:

1)在語法定義上的區(qū)別:
類變量也叫靜態(tài)變量,靜態(tài)變量前要加static關(guān)鍵字,而實(shí)例變量前則不加;
實(shí)例變量也叫對(duì)象變量,即沒加static 的變量;

2)在程序運(yùn)行時(shí)的區(qū)別:
實(shí)例變量屬于某個(gè)對(duì)象的屬性,必須創(chuàng)建了實(shí)例對(duì)象,其中的實(shí)例變量才會(huì)被分配空間,才能使用這個(gè)實(shí)例變量。靜態(tài)變量不屬于某個(gè)實(shí)例對(duì)象,而是屬于類,所以也稱為類變量,只要程序加載了類的字節(jié)碼,不用創(chuàng)建任何實(shí)例對(duì)象,靜態(tài)變量就會(huì)被分配空間,靜態(tài)變量就可以被使用了。總之,實(shí)例變量必須創(chuàng)建對(duì)象后才可以通過這個(gè)對(duì)象來使用。靜態(tài)變量則可以直接使用類名來引用;

3)在運(yùn)行表現(xiàn)結(jié)果的區(qū)別:
類變量和實(shí)例變量的區(qū)別在于:類變量是所有對(duì)象共有,其中一個(gè)對(duì)象將它值改變,其他對(duì)象得到的就是改變后的結(jié)果;而實(shí)例變量則屬對(duì)象私有,某一個(gè)對(duì)象將其值改變,不影響其他對(duì)象;

再來看看下面這段程序:

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();//創(chuàng)建類的實(shí)例A
      B = new StaticTest();//創(chuàng)建類的實(shí)例B
      StaticTest.stal = StaticTest.stal + 10;//通過類名給靜態(tài)變量賦值
      A.a2 = A.a2 + 10;//給實(shí)例A的成員A2賦值
      StaticTest.stal = StaticTest.stal + 10;//通過類名給靜態(tài)變量賦值
      B.a2 = B.a2 + 20;//給實(shí)例B的成員賦值
      Console.WriteLine("StaticTest.stal+{0},A.a2={1}", StaticTest.stal, A.a2);//輸出靜態(tài)變量和實(shí)例A的成員a2的值
      Console.WriteLine("StaticTest.stal+{0},B.a2={1}", StaticTest.stal, B.a2);//輸出靜態(tài)變量和實(shí)例B的成員a2的值
      Console.ReadKey();
      
    }
  }
  class StaticTest
  {
    public static int stal = 10;//定義靜態(tài)變量
    public int a2 = 10;//定義實(shí)例變量
  }
}

運(yùn)行結(jié)果如下圖所示:

希望本文所述對(duì)大家C#程序設(shè)計(jì)的學(xué)習(xí)有所幫助。

相關(guān)文章

最新評(píng)論