C#静态变量static简单分析

Posted on 2009-09-09 17:15  sky-v  阅读(5057)  评论(0编辑  收藏  举报
    主要介绍C#静态变量,包括介绍C#静态变量使用 static 修饰符进行声明等方面。
    C#静态变量使用 static 修饰符进行声明,在类被实例化时创建,通过类进行访问不带有 static 修饰符声明的变量称做非静态变量。static变量在对象被实例化时创建,通过对象进行访问一个类的所有实例的同一C#静态变量都是同一个值,同一个类的不同实例的同一非静态变量可以是不同的值。静态函数的实现里不能使用非静态成员,如非静态变量、非静态函数等。
     using System;  
     using System.Collections.Generic;  

     using System.Text;   

     namespace Example01  

     {  

        class Program  

        {  

          class Class1  
         {  

                public static String staticStr = "Class";  
                public String notstaticStr = "Obj";  

         }  

         static void Main(string[] args)  

        {  

         //静态变量通过类进行访问,该类所有实例的同一静态变量都是同一个值  

         Console.WriteLine("Class1's staticStr: {0}", Class1.staticStr);   

         Class1 tmpObj1 = new Class1();  

        tmpObj1.notstaticStr = "tmpObj1";  

        Class1 tmpObj2 = new Class1();  

        tmpObj2.notstaticStr = "tmpObj2";   

        //非静态变量通过对象进行访问,不同对象的同一非静态变量可以有不同的值  

        Console.WriteLine("tmpObj1's notstaticStr: {0}", tmpObj1.notstaticStr);  

        Console.WriteLine("tmpObj2's notstaticStr: {0}", tmpObj2.notstaticStr);   

        Console.ReadLine();  

       }  

     }  

      输出结果:
     

Copyright © 2024 sky-v
Powered by .NET 8.0 on Kubernetes