html5中文学习网

您的位置: 首页 > 网络编程 > ASP.NET » 正文

asp.net中静态变量和非静态变量的区别_.NET教程_编程技术

[ ] 已经帮助:人解决问题

静态变量:
静态变量使用 static 修饰符进行声明
在所属类被装载时创建
通过类进行访问
所属类的所有实例的同一静态变量都是同一个值
非静态变量:
不带有 static 修饰符声明的变量称做非静态变量
在类被实例化时创建
通过对象进行访问
同一个类的不同实例的同一非静态变量可以是不同的值
示例:


[复制到剪贴板]CODE:

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();
        }
    }
}


结果:
Class1's staticStr: Class
tmpObj1's notstaticStr: tmpObj1
tmpObj2's notstaticStr: tmpObj2

TJjHTML5中文学习网 - HTML5先行者学习网
TJjHTML5中文学习网 - HTML5先行者学习网
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助