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

//静态成员
//1.只存在此成员的一个副本
//2.当包含在这个类的应用程序被装载时,才创建静态成员
//3.在应用程序的整个生存周期内存一直存在。
//4.是值类型:静态成员必须有合法的值
namespace StaticMember
{
    class InstCount
    {
        public InstCount()
        {
            instanceCount++;
        }
        static public int instanceCount;
    }
        
    class Program
    {
        public static void PrintInstanceCount()
        {
            Console.WriteLine("[PrintInstanceCount] Now there {0} "+" {1} instance{2} of the InstCount class",InstCount.instanceCount==1? "Is":"are",InstCount.instanceCount,InstCount.instanceCount==1?"":"s"); 
        }
        static void Main(string[] args)
        {
            PrintInstanceCount();
            InstCount ic;
            for (int i = 0; i < 2; i++)
            {
                ic = new InstCount();
                Console.WriteLine("[Main] Instantiated a {0} object", ic.GetType());
                PrintInstanceCount();

            }
            Console.ReadKey();
        }
    }
}

运行截图:

Static之静态成员_值类型